-------------------------------------------------------事物--------------------------------------------------------------开始事物
begin transaction
提交事物
commit transaction
回滚事物
rollback transaction
一般是用系统变量 获得是否有错误的存在
把@@error的值 累加到局部变量 @error里
最后判断@error是否为0为0 表示没有错误 可以提交事物
不为0表示有错误 事物回滚
-------------------------------------------------------视图--------------------------------------------------------------
视图是虚拟表
我们一般只在视图上做查询
视图的名称的起法 最好是view_数据库名_表名(或是一个使用这个视图人的名)
视图说明 也是放在 本数据库的sysObjects 里 通过name进行查找
创建视图
create view 视图名
as
select语句 (可以在这里把列的名字 通过as ,=改成自己喜欢的中文)
go
删除视图 drop view 视图名
视图里存放的是sql语句
使用视图的方法 select * from 视图名 (如果列名在上面被改了,这里查询时候就用改了后的)
-------------------------------------------------------索引--------------------------------------------------------------
索引是sql server编排数据的内部方法,它为sql server提供一种方法来编排查询数据的路由
列的类型为 text,image,bit 的不能创建索引
查询的时候一般不需要人工指定使用哪个索引查寻 sql会根据所创的索引自动优化
缺点:会降低增加 ,删除的速度,需要更多的存储空间
聚集索引 clustered Index
唯一索引 unique Index
非聚集索引 NoNclustered Index
创建了唯一约束,将会自动创建唯一索引,设置为主键,该列就默认为聚集索引
聚集索引一个表只能一个,非聚集索引一个表可以多个