我想在我的C#应用程序中获取所有SQL Server数据库表的名称.可能吗?Plz告诉我解决方案.
我想在初始化connectionString后在SQL SErver中获取一个名为"Petro"的表的Schema,我使用此代码
conn.open();
conn.getSchema("Tables");
Run Code Online (Sandbox Code Playgroud)
但它返回所有表的模式.我只想要Petro架构.我该怎么办?
我有一个数据库(在SQL Server 2008 SP3中)并且需要C#代码中相关层次结构中的所有模式名称,表名和列名,我有以下SQLElement类:
public class SQLElement
{
public string SchemaName { get; set; }
public string TableName { get; set; }
public string ColumnName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
并有一个列表像:
List<SQLElement> SQLElementCollection = new List<SQLElement>();
那么如何从DB 读取名称并将它们添加到此列表(SQLElementCollection)?
例如假设我们创建一个这样的表:
Create Table [General].[City] (
[Id] BIGINT NOT NULL IDENTITY(1, 1),
[Title] NVARCHAR(30) NOT NULL DEFAULT (N''),
[Province_Id] BIGINT NOT NULL
)
Run Code Online (Sandbox Code Playgroud)
我需要这样的清单:
[0]={SchemaName="General", TableName="City", ColumnName="Id"}
[1]={SchemaName="General", TableName="City", ColumnName="Title"}
[2]={SchemaName="General", TableName="City", ColumnName="Province_Id"}
Run Code Online (Sandbox Code Playgroud)
有没有人对此有任何想法?
编辑:
在下一步中,我们如何获得每列或相关属性的类型?