资源描述:
《⑤索引,视图及常用函数》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、索引^9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^k9^^TX>TX>TXzTX>TX>TX>TX>TX>TX>TX>TS>TXzTS>TSzr
2、XzTX>TS>TXzTS>TS>TS>TS>?S^TS>TX>TSzTS>TXzTXzTS>TXzrSzrX>TXzTXzTSzTX>TX>TS^TX>TX>TX>TX>TS>TS>TX>TX>TSzrXzTS>T^^TX^TSzrX>TX>TSzTS>TXzrX>TXcreateindex索引名on表名(列名[,...])[on文件组]创建数据库:createdatabasemydbon(name=mydb_dat1,filename=,G:mydb_datl.mdf,size=5MB),
3、filegroupsecondgroup(name=mydb_dat2,filename=,G:mydb_dat2.ndf,size=5MB)创建表tbluserlusemydbcreatetabletbluselr(idint,namevarchar(20),ageint,gendervarchar(20))创建索引:createindextbluserl_idxlontbluser(id);createindextbluserl_idx2ontbluser(name);插入表格:inser
4、tintotbluserlvalues(l,abc;20,maleJinsertintotbluserlvalues(2/abc20/male,)查询索引:execsp_helpindexIbluseiT删除索引:dropindextbluser.tbluserl_idx1dropindextbluser.tbluserl_idx2索引类型①唯一索引:索引的值唯一创建表格tbluser2:createtabletbluser2(idint,namevarchar(20))创建唯一索引(在第二个
5、组文件中,默认情况下是第一个组文件):createuniqueindextbluser2_idxontbluser2(name)onsecondgroupexecsp_helpindex'tbluser2*②主键索引:建表时,如果有主键,将自动创建一个唯一索引。主键不能重复,考唯一索引来控制。createtabletbluser3(idint,namevarchar(20)primarykey)execsp_helpindex'tbluser3'insertintotbluser3values(
6、l,abcjinsertintotbluser3values(2,abc)(X)创建一个唯一约束,自动创建唯一索引createtabletbluser4(idintunique,namevarchar(20))【主键约束、唯一约束与索引关系】:创建主键约束、唯一约束时会自动创建唯一索引,主键列或唯一约束列值的唯一性靠唯一索引来实现的。①聚集索引/非聚集索引非聚集索引:nonclustered,索引有顺序,表的数据是任意存放的聚集索引:nonclustered,索引有顺序,表的数据是有顺序,且顺序
7、一致。查询速度快,但表数据更新慢。视图8、user2④删除视图:dropviewtbluser2_v⑵使用不同于表的列名:createviewtbluser2_v(username)asselectnamefromtbluser2(执行select*fromtbluser2_v进行验证)⑶通过视图修改表数据:①基于单个表。且没有计算。select*fromtbluser2updatetbluser2_vsetusername='bcd*②基于多个表连接的视图不能青接修矗,借助触发器进行修改I:创建基于两个表关联查询的视图:createt