sql基本语句学习
1.create表:自增长 identity(0,1)从0开始1为增加量 (对比mysql类似于auto_increment=1 //省略不写默认自增1)
primary key 可以像mysql直接用或者create table test(id int identity(0,1),name varchar(10),primary key(id))
2.主码属性必须非空和唯一(可以多个属性值合一起作为主键)
3.delete from test删除所有值,表还在 drop test连表一起删除
4.alter table r add A D 为表r添加A属性类型为D alter table r drop A 删除表r中A属性
5.select distinct dept_name from instructor去重查询
6.select 语句可以加上算术运算 对原来的表不产生影响
7. natural join?
8.更名运算:select distinct T.name from instructor as T,instructor as S where T.salary>S.salary and S.dept_name=’biology’
- 运算顺序:from,where,select
数据库与文件系统
使用文件处理数据的一些问题
* 数据的冗余和不一致。冗余指同一个数据在不同文件出现。不一致:同一数据有不同的副本
* 数据访问困难。传统的文件处理环境不能方便高效的访问数据。
* 原子性问题。某些操作要么一起发生要么不发生。文件系统很难保持原子性。
* 并发访问异常:并发环境下的数据可能被多个不同的应用程序访问,
* 完整性问题:数据库中的所存储数据的值必须满足某些特定的一致性约束。
数据抽象
- 物理层:描述数据实际上是怎么样存储的。物理层详细描述复杂的底层数据结构。
- 逻辑层:描述数据库中储存什么数据及这些数据间存在什么关系
- 视图层:只描述整个数据库的某个部分
事务的性质:
- 原子性:即不可分割性。事务要么全部完成,要么不执行。
- 一致性:无论如何操作,对数据正确性的保证。
- 隔离性:事务正确提交之前,不允许把该事务对数据的改变提交给其他事务
- 持久性:事务正确提交后,其结果将永远保存在数据库中。