zoukankan      html  css  js  c++  java
  • SQLSERVER 系统表查询

    查询数据库

    select * From master.dbo.sysdatabases where name='数据库名' and status<>512

    --读取库中的所有表名 (当前数据库)
    select name from sysobjects where xtype='u'
    --读取指定表的所有列名
    select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')
    获取数据库表名和字段
    sqlserver中各个系统表的作用
        sysaltfiles      主数据库                  保存数据库的文件
    syscharsets      主数据库                  字符集与排序顺序
    sysconfigures    主数据库                  配置选项
    syscurconfigs    主数据库                  当前配置选项
    sysdatabases      主数据库                  服务器中的数据库
    syslanguages      主数据库                  语言
    syslogins        主数据库                  登陆帐号信息
    sysoledbusers    主数据库                  链接服务器登陆信息
    sysprocesses      主数据库                  进程
    sysremotelogins主数据库                  远程登录帐号
    syscolumns        每个数据库                列
    sysconstrains    每个数据库                限制
    sysfilegroups    每个数据库                文件组
    sysfiles          每个数据库                文件
    sysforeignkeys 每个数据库                外部关键字
    sysindexs        每个数据库                索引
    sysmenbers        每个数据库                角色成员
    sysobjects        每个数据库                所有数据库对象
    syspermissions 每个数据库                权限
    systypes          每个数据库                用户定义数据类型
    sysusers          每个数据库                用户
    //
    用什么方法可以得到一个表中所有的列名。SQl语句。
    select      列名=name      from      syscolumns      where      id=object_id(N'要查的表名')
    use gpStrudy
    select      name="name"      from      syscolumns      where      id=object_id(N'bookTable')
    获得字段的属性
    //这是从一段代码中考出来的,使用的是using    System.Data.OleDb; 
        public    int    GetTableFields(String    tableName,out    String[]    fields,out    String[]    fieldTypes) 
        ...{ 
        try 
        ...{ 
        OleDbCommand    dc          =    m_OleDb.CreateCommand();//创建一个执行对象用于执行sql查询 
        dc.CommandText            =    "select    *    from    "    +    tableName; 
        dc.Transaction            =    m_OleTrans; 
        OleDbDataReader    dr    =    dc.ExecuteReader();//执行sql查询 
        //获取数据库的架构信息 
        DataTable    schemaTable    =    dr.GetSchemaTable(); 
        int    fieldColumnCount    =    0; 
        fields    =    new    String[schemaTable.Rows.Count]; 
        fieldTypes    =    new    String[schemaTable.Rows.Count]; 
        for(int    i    =    0;i    <    schemaTable.Columns.Count;i++) 
        ...{ 
        if(schemaTable.Columns[i].ColumnName.IndexOf("ColumnName")    >=    0) 
        ...{ 
        //获取字段名称 
        for(int    k    =    0;k    <    schemaTable.Rows.Count;k++) 
        fields[k]    =    schemaTable.Rows[k].ItemArray[i].ToString(); 
        fieldColumnCount++; 
        if(fieldColumnCount    >=    2) 
        ...{ 
        dr.Close(); 
        dc.Dispose(); 
        dr    =    null; 
        dc    =    null; 
        return    schemaTable.Rows.Count; 
        } 
        } 
        else    if(schemaTable.Columns[i].ColumnName.IndexOf("DataType")    >=    0) 
        ...{ 
        //获取字段类型 
        for(int    k    =    0;k    <    schemaTable.Rows.Count;k++) 
        fieldTypes[k]    =    schemaTable.Rows[k].ItemArray[i].ToString(); 
        fieldColumnCount++; 
        if(fieldColumnCount    >=    2) 
        ...{ 
        dr.Close(); 
        dc.Dispose(); 
        dr    =    null; 
        dc    =    null; 
        return    schemaTable.Rows.Count; 
        } 
        } 
        } 
        dr.Close(); 
        dc.Dispose(); 
        dr    =    null; 
        dc    =    null; 
        return    0; 
        } 
        catch(Exception    ee) 
        ...{ 
        fields            =    new    String[1]; 
        fieldTypes    =    new    String[1]; 
        m_ErrorString    =    "Ado_Application:GetTableFields:error:"    +    ee.Message; 
        return    0; 
        } 
        }

  • 相关阅读:
    HDU-1160_FatMouse's Speed
    通过设置线程池的最小线程数来提高task的效率,SetMinThreads。
    使用publisher模式控制频繁的UI输出,避免Winform界面假死
    使用C# HttpWebRequest进行多线程网页提交。Async httpclient/HttpWebRequest实现批量任务的发布及异步提交和超时取消
    使用fiddlercore修改网页的返回内容
    培训班课程课时及费用管理系统V3.0,适合钢琴培训班、艺术培训班等
    关于新版税控数据库密码的获取
    WinForm 进度条
    C#对摄像头的操作示例,采用Aforge库
    用C# BigInteger实现的BigDecimal类,终于可以直接做四则运算了。
  • 原文地址:https://www.cnblogs.com/peter-lau/p/12973531.html
Copyright © 2011-2022 走看看