SQLite3纪要

1.sqlite3数据类型:http://blog.chinaunix.net/uid-25523295-id-3082716.html
NULL          无类型,空值
INTEGER       带符号整数,根据存入的数值的大小占据1,2,3,4,6或者8个字节
REAL          浮点数,采用8byte(即双精度)的IEEE格式表示
TEXT          字符串文本,采用数据库的编码(UTF-8,UTF-16BE 或者UTF-16LE)
BLOB          无类型,可用于保存二进制文件

2.打开一个sqlite3数据库文件:
sqlite3 DBName.db
如果DBName.db文件已存在即直接打开,如果不存在则创建。

3.表的操作:
1>.创建一张表tablename:
CREATE TABLE tablename(colName1 dataType primary key, colName2 dataType, ...);
2>.删除表tablename:
DROP TABLE tablename;
3>.将表tablename1的名字改为tablename2:
ALTER TABLE tablename1 RENAME TO tablename2;
4>.查看数据库中所有的表名:
.table
5>.查看数据库中所有表的组织结构:
.schema
6>.帮助:
.help


4.记录的操作:
 1>.在表tablename中增加一条记录:
INSERT INTO tablename(colName1, colName2, ...) VALUES(data1,data2, ...);
 2>.从表tablename中删除(colName1=data)的记录:
DELETE FROM tablename WHERE colName1=data;
 3>.修改/更新表tablename里(colName1=values1)记录的(colName2=values2):
UPDATA tablename SET colName2=values2 WHERE colName1=values1;
 4>.查询表tablename里的数据:
SELECT colName1, colName2, ... FROM tablename;
SELECT * FROM tablename;
 5>.在同一个数据库中,将表oldtablename中的数据导入进表newtablename中:
INSERT INTO newtablename (arg1,arg2...) SELECT arg1.arg2... FROM oldtablename;

5.SQLite小技巧
转自:http://www.sqlite.com.cn/MySqlite/6/553.Html
 1>.返回最后插入的标识值
返回最后插入的标识值sql server用@@IDENTITY
sqlite用标量函数LAST_INSERT_ROWID()
返回通过当前的 SQLConnection 插入到数据库的最后一行的行标识符(生成的主键)。此值与 SQLConnection.lastInsertRowID 属性返回的值相同。

 2>.top n
在sql server中返回前2行可以这样:
select top 2 * from aa order by ids desc;

sqlite中用LIMIT,语句如下:
select * from aa order by ids desc LIMIT 2;

 3>.GETDATE()
在sql server中GETDATE()返回当前系统日期和时间
sqlite中没有

 4>.EXISTS语句
sql server中判断插入(不存在ids=5的就插入)
IF NOT EXISTS (select * from aa where ids=5)
BEGIN
insert into aa(nickname) select 't'
END
在sqlite中可以这样
insert into aa(nickname) select 't' where not exists(select * from aa where ids=5);

 5>.嵌套事务
sqlite仅允许单个活动的事务

 6>.RIGHT 和 FULL OUTER JOIN
sqlite不支持 RIGHT OUTER JOIN 或 FULL OUTER JOIN

 7>.可更新的视图
sqlite视图是只读的。不能对视图执行 DELETE、INSERT 或 UPDATE 语句,sql server是可以对视图 DELETE、INSERT 或 UPDATE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值