zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

显示SqlServer中所有表中的信息

SQLServer 信息 显示 所有 表中
2023-06-13 09:13:51 时间

显示某个SqlServer某个数据库中所有表或视图的信息
sqlserver2000与2005不同差别在于红色字部分
以下语句为获取所有表信息,替换绿色黑体字"U"为"V"为获取所有视图信息。

SqlServer2000版本

SELECTSysobjects.nameASTABLE_NAME,syscolumns.Id,syscolumns.nameASCOLUMN_NAME,
systypes.nameASDATA_TYPE,syscolumns.lengthasCHARACTER_MAXIMUM_LENGTH,
sysproperties.[value]ASCOLUMN_DESCRIPTION, syscomments.textas
COLUMN_DEFAULT,syscolumns.isnullableasIS_NULLABLEFROMsyscolumns
INNERJOINsystypes
   ONsyscolumns.xtype=systypes.xtype
   LEFTJOINsysobjectsONsyscolumns.id=sysobjects.id
  LEFTOUTERJOINsyspropertiesON
  (sysproperties.smallid=syscolumns.colid
    ANDsysproperties.id=syscolumns.id)
  LEFTOUTERJOINsyscommentsONsyscolumns.cdefault=syscomments.id
  WHEREsyscolumns.idIN 
   (SELECTidFROMSYSOBJECTSWHERExtype="U")AND(systypes.name<>"sysname")
   ORDERBYsyscolumns.colid

SqlServer2005版本

SELECTSysobjects.nameASTABLE_NAME,syscolumns.Id,syscolumns.nameASCOLUMN_NAME,
systypes.nameASDATA_TYPE,syscolumns.lengthasCHARACTER_MAXIMUM_LENGTH,
sys.extended_properties.[value]ASCOLUMN_DESCRIPTION, syscomments.textas
COLUMN_DEFAULT,syscolumns.isnullableasIS_NULLABLEFROMsyscolumns
INNERJOINsystypes
   ONsyscolumns.xtype=systypes.xtype
   LEFTJOINsysobjectsONsyscolumns.id=sysobjects.id
  LEFTOUTERJOINsys.extended_propertiesON
  (sys.extended_properties.minor_id=syscolumns.colid
    ANDsys.extended_properties.major_id=syscolumns.id)
  LEFTOUTERJOINsyscommentsONsyscolumns.cdefault=syscomments.id
  WHEREsyscolumns.idIN 
   (SELECTidFROMSYSOBJECTSWHERExtype="U")AND(systypes.name<>"sysname")
   ORDERBYsyscolumns.colid


参考:http://www.devx.com/tips/Tip/31235?type=kbArticle&trk=MSCP