---恢复内容开始---
创建视图必须遵循以下原则。
1.只能在当前数据库中创建视图。
2.视图名称必须遵循标识符的规则。
3.可以在视图之上创建视图。
4.如果从多个表中有相同的列名,必须指定特定名称。
5.视图查询不可以包含order by, compute , compute by,into关键字。
6.不能在视图上定义全文索引定义。
7.不能创建临时视图,也不能在临时表上创建视图。
8.不能对视图执行全文查询,但是如果查询所引用的表支持全文索引,就可以在视图定义中包含全文查询。
9.不能将规则或者DEFAULT定义关联与视图。
语法格式:
create view [schema_name.]view_name /*schema_name:指定视图的所有者名称,包括数据库名或所有者名*/
[(column_name[,....n])] /*特殊情况下指定,比如列是从算数表达式,函数或常量派生的,两个以上的列同名。默认与select列明相同*/
[with <view_attribute>[....n]] /*属性:1.Encryption:表示sql加密,可防止视图作为SQL SERVER复制的一部分发布
2.SCHEMABINDING:将视图绑定到架构上。指定它时,select_statement必须包含所引用的表,视图,或用 户定义函数的两部分名称(owner.object 即 拥有者.对象名)
3.View_metadata 元数据*/
AS select_statement[;]
[with CHECK OPTION] /*强制视图上执行的所有数据修改语句都必须符合由select_statement设置的标准。通过视图修改行时,
with check option 可确保提交修改后,仍可通过视图看到修改的数据*/
修改视图:
ALTER VIEW view_name
as
select_statement
---恢复内容结束---