机房重构视图

视图、存储过程、触发器等等早就听说过,却没有真正接触过,一直处在一个以后再说的状态中,逃是逃不掉了。 机房重构,重构出了什么?留着这个疑问。重构完以后再做总结。 视图:在SQL中,外模式一级数据结构的基本单位是视图,就是从若干个基本表和(或)其

视图、存储过程、触发器等等早就听说过,却没有真正接触过,一直处在一个以后再说的状态中,逃是逃不掉了。

机房重构,重构出了什么?留着这个疑问。重构完以后再做总结。

视图:在SQL中,外模式一级数据结构的基本单位是视图,就是从若干个基本表和(或)其他视图构造出来的表。其实就是一张虚表。

注意:在使用视图的时候,应当提前设置好关联表的主外键。

在机房收费系统里功能之一,学生查看余额时,用到了两张表的内容,Card表里的状态和余额,其他信息都来自学生表。

视图的创建和删除:

方法一:使用SQL语句创建视图

创建:

'CREATE VIEW<视图名>(<列表序列>)AS
Create VIEW V_stuCard (CardNo,StudentNo,StudentName,Department,Grade,Class,Exlpain,Cstatuss,Cash)
as Select T_Student.StudentNo ,T_Student .StudentName ,T_Student .Department ,T_Student .Grade ,T_Student .Class ,T_Student .Explain ,T_card.CardNo ,T_card.Cash ,T_Card .CStatus 
From T_Student ,T_Card 
Where T_Student .CardNo =T_Card .CardNo 
删除:
'删除:DROP VIEW<视图名>

DROP VIEW V_stuCard

\

方法二:直接右键视图,创建视图,相对比较省事简单。

1、新建视图,右键视图新建

\

2、添加需要的表

\

3、确定之后选择字段,然后在勾选出每个表我们需要的字段就可以啦。

删除是也可以之间右击删除,很方便。

在D层编写代码,查询语句和查询表是一样的,只是把表名称改为视图名称就可以了。如上:"Select * from V_stuCard where CardNo=@CardNo"

为什么要使用视图呢?视图把我们需要的数据有机的结合到了一起,如果我们需要好几个表里的数据,还得查好几个表,让自己的代码很沉重,使用视图,不仅减少代码,还可以让我们只写一条查询语句就OK啦。

总结:个人认为,虽然方法二简单,实现容易,但是还是建议使用SQL语句创建,应该多熟悉一下对SQL语句的使用。