SQL语句获取数据库名、所有表名、所有字段名及

系统 1910 0

SQL语句获取所有用户名,数据库名、所有表名、所有字段名及字段类型,方法来自于网上,稍加修改

1.获取所有用户名:

      
        SELECT
      
       name 
      
        FROM
      
       Sysusers 
      
        where
      
       status
      
        =
      
      
        '
      
      
        2
      
      
        '
      
      
        and
      
       islogin
      
        =
      
      
        '
      
      
        1
      
      
        '
      
    

 


islogin='1'表示帐户
islogin='0'表示角色
status='2'表示用户帐户
status='0'表示糸统帐户
2.获取所有数据库名:

      
        SELECT
      
       Name 
      
        FROM
      
       Master..SysDatabases 
      
        ORDER
      
      
        BY
      
       Name
    


3.获取所有表名

      
        SELECT
      
       Name 
      
        FROM
      
       DatabaseName..SysObjects 
      
        Where
      
       XType
      
        =
      
      
        '
      
      
        U
      
      
        '
      
      
        ORDER
      
      
        BY
      
       Name
    


XType='U':表示所有用户表;
XType='S':表示所有系统表;
4.获取所有字段名:
一、(测试未通过)

      
        SELECT
      
       Name 
      
        FROM
      
       SysColumns 
      
        WHERE
      
       id
      
        =
      
      
        Object_Id
      
      (
      
        '
      
      
        TableName
      
      
        '
      
      )
    


二、(测试通过)

      
        SELECT
      
      
         COLUMN_NAME, DATA_TYPE


      
      
        FROM
      
      
         INFORMATION_SCHEMA.COLUMNS


      
      
        WHERE
      
       (TABLE_NAME 
      
        =
      
      
        '
      
      
        Test
      
      
        '
      
      )
    


5.获取数据库所有类型

      
        select
      
       name 
      
        from
      
       systypes 
    


6.获取主键字段

      
        SELECT
      
       name 
      
        FROM
      
       SysColumns 
      
        WHERE
      
       id
      
        =
      
      
        Object_Id
      
      (
      
        '
      
      
        表名
      
      
        '
      
      ) 
      
        and
      
       colid 
      
        in
      
       (
      
        select
      
       keyno 
      
        from
      
       sysindexkeys 
      
        where
      
       id
      
        =
      
      
        Object_Id
      
      (
      
        '
      
      
        表名
      
      
        '
      
      ))
    

存储过程获取主键

sp_helpindex '表名'

7、获取字段类型

      
        select
      
       a.name 
      
        as
      
      
        [
      
      
        column
      
      
        ]
      
      ,b.name 
      
        as
      
       type 
      
        from
      
       syscolumns a,systypes b 
      
        where
      
       a.id
      
        =
      
      
        object_id
      
      (
      
        '
      
      
        表名
      
      
        '
      
      ) 
      
        and
      
       a.xtype
      
        =
      
      b.xtype
    


或者可以通过存储过程
exec sp_help 表名

8、取表结构

      
        select
      
       column_name,data_type,character_maximum_length 
      
        from
      
       information_schema.columns 
      
        where
      
       table_name 
      
        =
      
      
        '
      
      
        表名
      
      
        '
      
    

9、将列设为主键

      
        ALTER
      
      
        TABLE
      
       表名 
      
        ADD
      
      
        PRIMARY
      
      
        KEY
      
       (列名);
    

 

  请注意,在用ALTER TABLE语句来添加主键之前,我们需要确认被用来当做主键的栏位是设定为『NOT NULL』;也就是说,那个栏位一定不能没有资料。


CREATE TABLE Customer 
(SID integer PRIMARY KEY, 
Last_Name varchar(30), 
First_Name varchar(30));

SQL语句获取数据库名、所有表名、所有字段名及字段类型


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论