1、数据类型
NULL:标识一个NULL值
interger:整型
real:浮点型
text:字符串
blob:二进制
(常用前三个)也有以下类型:
smallinta:16位整数
integer:32位整数
decimal(p,s):p是精确值,s是小数位数
float:32位实数
double:64位实数
char(n):n是长度字符串,不能超过254
varchar(n):长度不固定最大字符串长度为n,n不超过4000
date:包含了年份、月份、日期
time:包含了小时、分钟、秒
timestamp:包含年、月、日、时、分、秒、千分之一秒
2、约束条件
PRIMARY KEY -主键
1.主键的值必须唯-一, 用于标识每一 条记录,如学生的学号
2.主键同时也是一 个索引,通过主键查找记录速度较快
3.主键如果是整数类型,该列的值可以自动增长(建表时增加integer PRIMARY KEY autoincrement)
2. NOT NULL -非空:
约束列记录不能为空,否则报错
3. UNIQUE
唯一:除主键外,约束其他列的数据的值唯一
4. CHECK -条件检查:
约束该列的值必须符合条件才可存入
5. DEFAULT -默认值:
列数据中的值基本都是- -样的,这样的字段列可设为默认值
eg:CREATE TABLE record(id integer primary key autoincrement, sid integer, bid integer, ctime date default(datetime(‘now’)));
6.FOREIGN KEY -外键约束:
eg:create table t_ area (id integer primary key autoincrement, name text, country_ id integer, constraint fk_ class_ id_ t_ country_ id foreign key (country_ id)references t_ country (id));
注意,需要先允许外键功能: sqlite> PRAGMA foreign_ keys = ON;
3、创建表
sqlite>create table 表名(名字 数据类型 约束条件(部分名字可以没有) );
eg:sqlite>create table book(bid interger primary key,bname text NOT NULL UNIQUE,price real );
4、删除表
drop table 表名
3、建表语句(查看创建了哪些表)
sqlite>.schema
5、向表内添加数据
sqlite>insert into 表面 values();
eg:insert into book values(1,‘my’,15);
6、查询添加表内的数据
sqlite>select *(查看所有列数据)from 表名:
7、显示
sqlite>.separator | (显示的数据每列以 | 隔开)
8、更新语句
sqlite>update table 表名 set field1=val1,field2=val2 where expression;
where是sql语句中用于表示条件判断,expression为判断表达式
eg: 修改学生语句表中学号为0001的数据
update table student set stu=0001,name=hance where stu=0001;