Rails默认使用sqlite3做为数据库,虽然很多人更喜欢mysql。但如果是学习用,sqlite3够了,因为它轻量,不需要安装。

首先对sqlite3做个简短的介绍:
1、sqlite3不需要配置,不需要安装,也不需要管理员。最牛的是它没有服务器,仅是一个exe或dll
2、数据库以文件形式保存在磁盘上,可以自由COPY使用
3、因为sqlite3没有服务器监听端口,所以不能像mysql一样通过ip和端口远程连接数据库。如果想远程访问数据库,只能通过数据库文件共享方式

1、安装gem

gem install sqlite3

2、安装sqlite3

windows下安装方法:
下载 http://dl.dbank.com/c0cmb3fd78

解压安装包后把3个文件(包括sqlite3.exe,sqlite3.dll,sqlite3.def)全部放到/Ruby/bin目录下即可。
linux下安装方法:

sudo apt-get install sqlite3

如果apt-get 安装 sqlite3后gem安装仍失败请参考http://rubyer.me/blog/738 来编译安装sqlite3
OK,现在可以创建项目并使用SQLite3了

3、基本命令

使用rails new myproject创建工程后,在myproject/config目录下有database.yml,其默认使用的是sqlite3.

如下:

development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000 

打开终端进入到myproject根目录,编辑development.sqlite3数据库

#进入db文件夹下面的数据库development.sqlite3
sqlite3 db/development.sqlite3 #查看该数据库的表格
.table #创建表格
create table users(id integer primay key, username text); #插入数据
insert into users(username) values('god'); #查看表格中的数据
select * from users;
#查看表的结构:
select * from sqlite_master where type="table"; #默认情况下,不会出现红框中的表头,需要之前设置,命令为:
.header on

#如果只想查看具体一张表的表结构,比如查看emperors表,命令为:
select * from sqlite_master where type="table" and name="emperors"; #另外,也可以这样:
sqlite> .schema emperors
CREATE TABLE emperors( id integer primary key autoincrement, name text,dynasty text,start_year text);

最新文章

  1. HDU1039-Easier Done Than Said?(字符串处理)
  2. 【NodeJS线程】Boss和他的职员们
  3. DevExpress winform XtraEditor常用控件
  4. GATK软件介绍
  5. 通过URl将服务器的图片下载到本地并压缩
  6. CUDA中修饰符的解释
  7. AMQ学习笔记 - 14. 实践方案:基于ZooKeeper + ActiveMQ + replicatedLevelDB的主从部署
  8. linux下常用网络操作汇总
  9. Angular2 - Starter - Pipes, Custom Pipes
  10. Set 与 Multiset
  11. Hexo中添加本地图片
  12. Vue 进阶之路(四)
  13. servlet中常用到的工具
  14. BZOJ3531 树剖 + 动态开点线段树
  15. timer控件、三级联动、帐号激活权限设置
  16. kindeditor在线编辑器的使用心得
  17. 前后端同学必会的Linux基础命令
  18. 怎样用Windows10全屏流畅运行红色警戒2
  19. 记一次诡异的bug
  20. 2018.09.30 bzoj2821: 作诗(Poetize)(分块)

热门文章

  1. RequestMapping请求映射方式
  2. C# 处理base64 以及base64的原理分析
  3. 【2039】checker(Dp)
  4. EntityFramework 学习 一 Validate Entity
  5. .on事件绑定多少次就会执行多少次
  6. hdoj1004--Let the Balloon Rise
  7. 防止php重复提交表单更安全的方法
  8. Codeforces Round #437 (Div. 2, based on MemSQL Start[c]UP 3.0 - Round 2) E
  9. Linux脚本基础
  10. xss攻击的分类