zoukankan      html  css  js  c++  java
  • sql server 2005系统视图sys.sysobjects和sys.all_objects,sys.objects,三者之间有什么区别?

    select * from sys.all_objects --所有架构范围内的用户定义对象和系统对象的 UNION。 
    select * from sys.objects --在数据库中创建的每个用户定义的架构范围内的对象在该表中均对应一行 
    。 
    select * from sys.sysobjects--在数据库中创建的每个对象(例如约束、默认值、日志、规则以及存储 
    过程)都对应一行。 
    select * from sys.system_objects --对于2005 附带的所有架构范围内的系统对象,相应地包含一行。 
    --所有系统对象都包含在名为 sys 或 INFORMATION_SCHEMA 的架构中。 
    --看一下all_objects的构成 
    sp_helptext 'sys.all_objects' 
    --内容如下 
    --CREATE VIEW sys.all_objects AS 
    --SELECT * FROM sys.objects 
    --UNION ALL 
    --SELECT * FROM sys.system_objects 
    --可以看出视图sys.all_objects是用户定义对象sys.objects和系统对象system_objects的合集 
    --在看看下面的语句 
    select name 
    from sys.all_objects 
    where name not in 
    (select name from sys.sysobjects) 
    --执行结果为空,表明两个视图目前是相同的,但是不知道具体的区别. 
    --现在来看两个函数使用sql 2005 自带数据库 
    use AdventureWorks 
    select object_name(parent_object_id),type,* from sys.all_objects 
    where name='CK_SalesOrderHeader_TaxAmt' 
    --执行结果:SalesOrderHeader C 
    --type=c说明这个对象是一个约束。父对象是SalesOrderHeader 
    --看一下SalesOrderHeader的架构 
    select schema_name(schema_id),* from sys.all_objects 
    where name='SalesOrderHeader' 
    --结果为sales 
    --获得sales.SalesOrderHeader的说明 
    sp_help 'sales.SalesOrderHeader' 
    --CHECK on column TaxAmt CK_SalesOrderHeader_TaxAmt (n/a) (n/a) Enabled 
    Is_For_Replication ([TaxAmt]>=(0.00)) 
    --可以看到对象CK_SalesOrderHeader_TaxAmt是表SalesOrderHeader的约束。 
    --列taxamt

  • 相关阅读:
    linux 下ip命令对比ifconfig命令
    Redis使用详细教程
    shell中eval命令
    在Ubuntu 14.04 上安装 FTP 服务
    这本将shell的书应该不错
    linux sh 脚本调用外部命令
    c语言char 和int的问题
    ubuntu网卡ip的配置
    js中获取时间new date()的用法
    react 组件之间的通信
  • 原文地址:https://www.cnblogs.com/lvfeilong/p/sdfhg435345.html
Copyright © 2011-2022 走看看