视图是建立在真实表之上的虚拟“表”,它在数据库中的存储实际上是一串代码。
例如,我们创建了一个视图,如果得到当前库中的所有视图呢?
其实我们只需执行以下SQL语句即可。Select name from sysobjects where xtype='v'即可。在SQL Server中,这个SysObjects表中存储着很多信息,其中,xtype='v'的是视图(包括系统创建的视图),xtype='u'的是表,我们可以通过对这个表的查询得到当前可用的视图和表。
另外,也可以通过对ADOConnection的方法调用得到需要的列表,如下:
TADOConnection.GetTableNames取表名列表
TADOConnection.GetProcedureNames取存储过程名列表
对于视图,前面提到,在库中保存的是它的创建代码,它是存储在SysComments里面的,对应的记录是SysComments.id=SysObjects.id,视图代码保存在SysComments的text字段中。
另外,存储过程好像也是保存在这个表中的,但是存储过程尚未搞明白,所以未证实。
在系统表当中保存有很多有用的信息,包括用户信息、库文件的保存路径、以及其他一些参数(自定义变量类型等)都在Sys开头的表当中保存,以后遇到了再总结。
SQL Server信息存储——视图和表在数据库中的存储
最新推荐文章于 2024-03-30 14:49:37 发布