以下的文章主要描述的是正确了解MS SQL Server 2000视图功能与应用,在实际操作中视图有很多的好处,其中包括横纵分割表,执行和在表上一至的实际操作,如:Insert、Update、Delete。
这些操作与在表上的相应操作大至相同,不过也有些不同之处。在视图上进行操作的列是只属于视图的列,这些列不一定包含对应表中的所有列,所以在执行Insert操作或Update操作时,如果视图中有未被包含的列,并且这些列是Not NULL的,那么在视图上执行相应的Insert操作或Update操作时就会失败,还有在MS SQL Server 2000视图上如果使用了Group By、Distinct等操作时,不能执行Insert或Update操作。
还有一点需要注意的是,如果MS SQL Server 2000视图中包含的不只是一个表,那么执行Insert或Update一次只能对MS SQL Server 2000视图中的某个表进行操作,也就是说,如果视图中包含了两个表A、B,那么就需要对视图执行两次Insert或Update操作,一次操作表A的各个列,一次操作表B的各个列。
语法:
- Create View View_Name [columnname,……]
- AS Select Statement [WITH CHECK OPTION] [WITH ENCRYPTION]
举例说明:
Use SomeDataBase Go –这句与MySQL的一样,就是表示要进入某个数据库
Create View SomeView –创建一个视图SomeView
- As
- Select * from UserInfo [WITH ENCRYPTION]
–在Select 语句后加上With Encryption 表示对MS SQL Server 2000视图进行加密,这样其它用户查看这个视图时,就看不到视图中的内容。
- GO
事务:
在MS SQL Server中对事务的操作一共有四个,它们是:
- Begin Transaction、Commit、Rollback和Save Transaction。
索引:
索引有四种,***索引、簇索引、非簇索引和复合索引。
表扫描一般用在大表返回绝大多数数据或小表查询某些数据时使用。在大表中查询有限量数据,一般使用索引。
索引其实是一种与表中的列相绑定的对象。
使用索引的时机:
1.经常被查询搜索的列。
2.在Order by子句中使用的列。
3.是外键或主键的列。
4.该列的值***的列。
不能使用或不适合使用索引的情况:
1.在查询中很少被引用的列。
2.数据类型为bit、text和Image等的列不能建立索引。
语法:
- Create [UNIQUE][CLUSTERED|NONCLUSTERED] Index index_name
- On TableName (Column [,…n])
举例说明:
- Create UNIQUE CLUSTERED Index SomeIndex On UserInfo (UserName)
这就是在表UserInfo的列UserName上建立的一个***簇集索引。
以上的相关内容就是对MS SQL Server 2000视图的介绍,望你能有所收获。
【编辑推荐】