手机
当前位置:查字典教程网 >编程开发 >C#教程 >c#获得目标服务器中所有数据库名、表名、列名的实现代码
c#获得目标服务器中所有数据库名、表名、列名的实现代码
摘要:复制代码代码如下://////获得目标服务器所有数据库名////////////publicvoidgetDataBaseNameList(...

复制代码 代码如下:

/// <summary>

/// 获得目标服务器所有数据库名

/// </summary>

/// <param name="serverName"></param>

/// <param name="userName"></param>

/// <param name="password"></param>

public void getDataBaseNameList(string serverName, string userName, string password)

{

SQLDMO.Application sqlApplication = new SQLDMO.ApplicationClass();

SQLDMO.SQLServer sqlServer = new SQLDMO.SQLServerClass();

sqlServer.Connect(serverName, userName, password); // 连接服务器

foreach (SQLDMO.Database databBase in sqlServer.Databases)

{

if (databBase.Name != null)

{

this.DataBaseTreeView.Nodes.Add(databBase.Name);

getDataBaseTableList(serverName, userName, password, databBase.Name);

}

}

}

/// <summary>

/// 加载数据库中表

/// </summary>

/// <param name="serverName">服务器名</param>

/// <param name="userName">用户名</param>

/// <param name="password">密码</param>

/// <param name="dataBaseName">数据库名</param>

private void getDataBaseTableList(string serverName, string userName, string password, string dataBaseName)

{

SQLDMO.SQLServer Server = new SQLDMO.SQLServerClass();

//连接到服务器

Server.Connect(serverName, userName, password);

//对所有的数据库遍历,获得指定数据库

for (int i = 0; i < Server.Databases.Count; i++)

{

//判断当前数据库是否是指定数据库

if (Server.Databases.Item(i + 1, "dbo").Name == dataBaseName)

{

//获得指定数据库

SQLDMO._Database db = Server.Databases.Item(i + 1, "dbo");

//获得指定数据库中的所有表

for (int j = 0; j < db.Tables.Count; j++)

{

this.DataBaseTreeView.Nodes[i].Nodes.Add(db.Tables.Item(j + 1, "dbo").Name);

}

}

}

}

/// <summary>

/// 获得表中所有列名

/// </summary>

/// <param name="serverName">服务器名</param>

/// <param name="userName">用户名</param>

/// <param name="password">密码</param>

/// <param name="tableName">表名</param>

/// <param name="dataBaseName">数据库名</param>

/// <returns></returns>

public string getRowListFromTable(string serverName, string userName, string password, string tableName, string dataBaseName)

{

string result = string.Empty;

string connectionString = string.Empty;

connectionString += "server=" + serverName;

connectionString += ";Pwd=" + password;

connectionString += ";UID=" + userName;

connectionString += ";Database=" + dataBaseName;

string commandString = string.Empty;

commandString += "select name from syscolumns where id=object_id('";

commandString += tableName;

commandString += "')";

SqlConnection sqlConnection = new SqlConnection(connectionString);

SqlCommand sqlCommand = new SqlCommand(commandString, sqlConnection);

SqlDataAdapter dataAdapter = new SqlDataAdapter(commandString, sqlConnection);

DataSet dataSet = new DataSet();

dataAdapter.Fill(dataSet);

DataTable dataTable = dataSet.Tables[0];

// DataTable dataTable = sqlConnection.GetSchema("Tables");

foreach (DataRow row in dataTable.Rows)

{

result += row[0].ToString() + "-";

}

if (result != null)

{

return result;

}

else

{

return "0";

}

}

【c#获得目标服务器中所有数据库名、表名、列名的实现代码】相关文章:

C#三种判断数据库中取出的字段值是否为空(NULL) 的方法

c#斐波那契数列(Fibonacci)(递归,非递归)实现代码

C#生成注册码的实例代码

解析c#显示友好时间的实现代码

C#保存图片到数据库并读取显示图片的方法

C#灰度化图像的实例代码

C#连接Oracle数据库的实例方法

C# 手动/自动保存图片的实例代码

C#获取计算机名,IP,MAC信息实现代码

C#的锯齿数组以及C++实现代码

精品推荐
分类导航