gpt4 book ai didi

c# - 获取表的架构

转载 作者:太空狗 更新时间:2023-10-29 21:20:59 27 4
gpt4 key购买 nike

给定一个 SQLConnection 对象,您如何获得单个表的架构?

我似乎能够从运行查询得到的 DataSet 中获取模式,但我能从连接中获取的所有模式信息似乎都与哪些表相关可用,而不是表格上的实际详细信息。

最佳答案

此代码将执行您想要的操作(显然更改表名称、服务器名称等):

using System;
using System.Collections.Generic;
using System.Text;

using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;

namespace ConsoleApp
{
class Program
{
static void Main(string[] args)
{
string query = "SELECT * FROM t where 1=0";
string connectionString = "initial catalog=test;data source=localhost;Trusted_Connection=Yes";

DataTable tblSchema;

using (SqlConnection cnn = new SqlConnection(connectionString))
{
using (SqlCommand cmd = cnn.CreateCommand())
{
cmd.CommandText = query;
cmd.CommandType = CommandType.Text;
cnn.Open();
using (SqlDataReader rdr = cmd.ExecuteReader(CommandBehavior.KeyInfo))
{
tblSchema = rdr.GetSchemaTable();
}
cnn.Close();
}
}
int numColumns = tblSchema.Columns.Count;
foreach (DataRow dr in tblSchema.Rows)
{
Console.WriteLine("{0}: {1}", dr["ColumnName"], dr["DataType"]);
}

Console.ReadLine();
}
}
}

关于c# - 获取表的架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/173834/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com