数据库学习笔记3(SQL初级)
1.SQL基础
1. SQL语言有以下几部分
- 数据定义语言(DDL)
- 数据操纵语言(DML)
- 完整性(Integrity)
- 视图定义(View definition)
- 事务控制(Transaction control)
- 授权(Authorization)
2.SQL数据定义
-
SQL的DDL不仅能够定义一组关系,还能够定义每个关系的信息,包括:
-
- 每个关系的模式
- 每个属性的取值类型
- 完整性约束
- 每个关系维护的索引集合
- 每个关系的安全性和权限信息
- 每个关系在磁盘上的物理存储结构
-
SQL的基本数据类型
-
- char(n) 定长字符数组
- varchar(n) 可变字符数组
- int 整形
- smallint 小整形
- numeric(p,d) p位定点数,小数点后有d位
- real,double precision 浮点数
- float(n) 精度至少为n的浮点数
- null 为缺失值
-
SQL的基本模式
-
-
creat table可以创建一个关系
-
命令的通用形式为
creat table r
(A1 D1,
A2 D2
A3 D3
< integrity-constraint >
)
r为关系名称,Ai是属性,Di是Ai的类型
-
-
SQL支持很多的完整性约束(integrity constraint)
-
- primary key(Aj1 Aj2 ... Ajm ) 主码属性必须非空且唯一
- foreign key (Aj1 Aj2 ... Ajm ) references s 这些A的属性的取值必须对应于关系s某元组在主码属性上的取值
- not null 表明这个属性不能为空
-
插入命令 insert into s values ("D1","D2"...),D1,D2为具体的值,s为数据表
-
删除命令
- delete from r
- drop table r
delete保留关系r而drop会删除模式r
-
添加属性
alter table r add A D
r是关系的名称,A为属性 D为类型
刚添加属性时这些新属性的取值为null