zoukankan      html  css  js  c++  java
  • 获取sql server数据库表结构

    if exists (select 1 from sysobjects where name = 'sysproperties'and xtype = 'V')
    begin
        DROP VIEW sysproperties
    end
        GO
        CREATE VIEW sysproperties
    AS
     SELECT class AS id,Minor_id AS sMallid,* from sys.extended_properties 
     

    -------在sql server 2005中获取表结构请先执行以上语句


    SELECT
      表名   = CASE a.colorder WHEN 1 THEN c.name ELSE '' END,
      序     = a.colorder,
      字段名 = a.name,
      标识   = CASE COLUMNPROPERTY(a.id,a.name,'IsIdentity') WHEN 1 THEN '√' ELSE '' END,
      主键   = CASE
        WHEN EXISTS (
          SELECT *
          FROM sysobjects
          WHERE xtype='PK' AND name IN (
            SELECT name
            FROM sysindexes
            WHERE id=a.id AND indid IN (
              SELECT indid
              FROM sysindexkeys
              WHERE id=a.id AND colid IN (
                SELECT colid
                FROM syscolumns
                WHERE id=a.id AND name=a.name
              )
            )
          )
        )
        THEN '√'
        ELSE ''
      END,
      类型   = b.name,
      字节数 = a.length,
      长度   = COLUMNPROPERTY(a.id,a.name,'Precision'),
      小数   = CASE ISNULL(COLUMNPROPERTY(a.id,a.name,'Scale'),0)
        WHEN 0 THEN ''
        ELSE CAST(COLUMNPROPERTY(a.id,a.name,'Scale') AS VARCHAR)
      END,
      允许空 = CASE a.isnullable WHEN 1 THEN '√' ELSE '' END,
      默认值 = ISNULL(d.[text],''),
      说明   = ISNULL(e.[value],'')
    FROM syscolumns a
      LEFT  JOIN systypes      b ON a.xtype=b.xusertype
      INNER JOIN sysobjects    c ON a.id=c.id AND c.xtype='U' AND c.name<>'dtproperties' and c.name='此处改为你获取的表名称'
      LEFT  JOIN syscomments   d ON a.cdefault=d.id
      LEFT  JOIN sysproperties e ON a.id=e.id AND a.colid=e.smallid
    ORDER BY c.name, a.colorder

  • 相关阅读:
    原码、反码、补码之间的相互关系
    在用 JavaScript 工作时,我们经常和条件语句打交道,这里有5条让你写出更好/干净的条件语句的建议。
    冒泡排序最佳情况的时间复杂度
    path的join和resolve的使用区别
    SCSS入门
    webpack 前后端分离开发接口调试解决方案,proxyTable解决方案
    JS中原型链的理解
    30分钟,让你彻底明白Promise原理
    状态码常用对照表
    前端性能优化方案都有哪些?
  • 原文地址:https://www.cnblogs.com/PingleDay/p/4229368.html
Copyright © 2011-2022 走看看