DataTable读取表的架构信息

简介:
using System;
using System.Data;
using System.Data.SqlClient;

namespace Northwind
{
    class Program
    {
        static void Main(string[] args)
        {
            SqlConnection sqlConn = null;
            SqlCommand sqlCmd = null;
            SqlDataReader sqlDR = null;
            try
            {
                //创建连接对象,使用集成安全方式连接,更安全
                sqlConn = new SqlConnection(@"data source=localhost;
                   Integrated Security=SSPI;Initial Catalog=northwind");
                //创建命令对象,参数1是存储过程名
                string strSql = @"select categoryid, categoryname from categories;"
                    + @"select employeeId, lastname from employees";
                sqlCmd = new SqlCommand(strSql, sqlConn);
     
                //打开数据库
                sqlConn.Open();
                //执行查询,并将结果集返回给SqlDataReader
                sqlDR = sqlCmd.ExecuteReader();

                //返回结果集中表的架构信息
                DataTable schemaTable = sqlDR.GetSchemaTable();
                //遍历所有的行,直到结束
                foreach (DataRow r in schemaTable.Rows)
                {
                    foreach (DataColumn c in schemaTable.Columns)
                        Console.WriteLine(c.ColumnName + "  =  " + r[c]);
                    Console.WriteLine();
                }
                /*
                do 
                {
                    Console.WriteLine(@"-------------------------------");
                    Console.WriteLine("{0, -15}{1,-15}", sqlDR.GetName(0),
                        sqlDR.GetName(1));
                    Console.WriteLine(@"-------------------------------");
                    while (sqlDR.Read())
                    {
                        Console.WriteLine("{0, -15}${1,-15}", sqlDR.GetInt32(0),
                        sqlDR.GetString(1));
                    }
                    Console.WriteLine();

                } while (sqlDR.NextResult());
                */
            }
            catch (System.Exception e)
            {
                Console.WriteLine(e.Message);
            }
            finally
            {
                //关闭SqlDataReader对象
                sqlDR.Close();
                //断开数据库连接
                sqlConn.Close();
            }

        }
    }
}
 

ColumnName  =  categoryid ColumnOrdinal  =  0 ColumnSize  =  4 NumericPrecision  =  10 NumericScale  =  255 IsUnique  =  False IsKey  = BaseServerName  = BaseCatalogName  = BaseColumnName  =  categoryid BaseSchemaName  = BaseTableName  = DataType  =  System.Int32 AllowDBNull  =  False ProviderType  =  8 IsAliased  = IsExpression  = IsIdentity  =  True IsAutoIncrement  =  True IsRowVersion  =  False IsHidden  = IsLong  =  False IsReadOnly  =  True ProviderSpecificDataType  =  System.Data.SqlTypes.SqlInt32 DataTypeName  =  int XmlSchemaCollectionDatabase  = XmlSchemaCollectionOwningSchema  = XmlSchemaCollectionName  = UdtAssemblyQualifiedName  = NonVersionedProviderType  =  8 IsColumnSet  =  False

ColumnName  =  categoryname ColumnOrdinal  =  1 ColumnSize  =  15 NumericPrecision  =  255 NumericScale  =  255 IsUnique  =  False IsKey  = BaseServerName  = BaseCatalogName  = BaseColumnName  =  categoryname BaseSchemaName  = BaseTableName  = DataType  =  System.String AllowDBNull  =  False ProviderType  =  12 IsAliased  = IsExpression  = IsIdentity  =  False IsAutoIncrement  =  False IsRowVersion  =  False IsHidden  = IsLong  =  False IsReadOnly  =  False ProviderSpecificDataType  =  System.Data.SqlTypes.SqlString DataTypeName  =  nvarchar XmlSchemaCollectionDatabase  = XmlSchemaCollectionOwningSchema  = XmlSchemaCollectionName  = UdtAssemblyQualifiedName  = NonVersionedProviderType  =  12 IsColumnSet  =  False

请按任意键继续. . .


目录
相关文章
|
存储 数据采集 监控
信息系统架构开发方法ADM
信息系统架构开发方法ADM
942 5
|
运维 Linux Apache
LAMP架构调优(一)——隐藏Apache版本信息
LAMP架构调优(一)——隐藏Apache版本信息
134 1
|
缓存 监控 数据格式
信息系统架构模型(2) SOA
信息系统架构模型(2) SOA
299 0
|
存储 NoSQL 关系型数据库
MPP架构数据仓库使用问题之Visibility bitmap表被删除的文件信息是如何记录的
MPP架构数据仓库使用问题之Visibility bitmap表被删除的文件信息是如何记录的
|
11月前
|
监控 JavaScript 数据可视化
建筑施工一体化信息管理平台源码,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
智慧工地云平台是专为建筑施工领域打造的一体化信息管理平台,利用大数据、云计算、物联网等技术,实现施工区域各系统数据汇总与可视化管理。平台涵盖人员、设备、物料、环境等关键因素的实时监控与数据分析,提供远程指挥、决策支持等功能,提升工作效率,促进产业信息化发展。系统由PC端、APP移动端及项目、监管、数据屏三大平台组成,支持微服务架构,采用Java、Spring Cloud、Vue等技术开发。
399 7
|
运维 搜索推荐 大数据
云HIS系统源码,云医院信息系统:以患者为中心的云架构、云服务、云运维的信息体系
医院信息系统(HIS)正借助云计算与大数据技术,从局域网模式向互联网转型,实现医疗服务高效化、个性化。新型医疗卫生信息平台(HIP)构建了以患者为中心的云端服务体系,支持区域内资源统一管理与按需服务,促进医疗机构间的业务协同。系统具备一体化管理、标准化建设等特点,涵盖从门诊到住院全流程,包括挂号、收费、诊疗、药房药库管理等多个模块,支持数据整合与智能分析,助力医疗服务智能化升级与科学决策。
353 0
云HIS系统源码,云医院信息系统:以患者为中心的云架构、云服务、云运维的信息体系
|
存储 安全 关系型数据库
"揭秘!如何设计数据库架构,让信息系统心脏强健无比?一场关于数据效率、安全与可扩展性的深度探索"
【8月更文挑战第19天】数据库架构是信息系统的核心,关乎数据存储效率与安全及应用性能和扩展性。优秀设计需综合考量业务需求、数据模型选择、查询优化、事务处理、安全性和扩展性。首先,深刻理解业务需求,如电商系统需高效处理并增长商品、订单等数据。其次,基于需求选择合适的数据模型,如关系型或非关系型数据库。再者,优化查询性能与索引策略以平衡读写负载。同时,考虑事务处理和并发控制以保证数据一致性和完整性。最后,加强安全性措施和备份恢复策略以防数据风险。通过这些步骤,可以构建稳健高效的数据库架构,支持系统的稳定运行。
199 0
|
存储 运维 安全
软件体系结构 - 信息系统架构
【4月更文挑战第20天】软件体系结构 - 信息系统架构
608 13
|
存储 API 数据库
信息系统架构模型
信息系统架构模型
531 1
|
JavaScript 前端开发 Java
信息打点-JS架构&框架识别&泄漏提取&API接口枚举&FUZZ&插件项目
信息打点-JS架构&框架识别&泄漏提取&API接口枚举&FUZZ&插件项目
237 0

热门文章

最新文章