랜의 모든 데이터베이스 서버, 쿼리 sqlserver 비시스템 데이터베이스, 모든 테이블, 모든 열 가져오기
12268 단어 sqlserver
/// <summary>
///
/// </summary>
/// <returns> </returns>
public List<string> GetSqlServerNames()
{
DataTable dataSources = SqlClientFactory.Instance.CreateDataSourceEnumerator().GetDataSources();
DataColumn column = dataSources.Columns["InstanceName"];
DataColumn column2 = dataSources.Columns["ServerName"];
DataRowCollection rows = dataSources.Rows;
List<string> Serverlist = new List<string>();
string array = string.Empty;
for (int i = 0; i < rows.Count; i++)
{
string str2 = rows[i][column2] as string;
string str = rows[i][column] as string;
if (((str == null) || (str.Length == 0)) || ("MSSQLSERVER" == str))
{
array = str2;
}
else
{
array = str2 + @"\" + str;
}
Serverlist.Add(array);
}
Serverlist.Sort();
return Serverlist;
}
/// <summary>
/// sql
/// </summary>
/// <param name="connection"></param>
/// <returns></returns>
public List<string> databaseList(string connection)
{
List<string> getCataList = new List<string>();
string cmdStirng = "select name from sys.databases where database_id > 4";
SqlConnection connect = new SqlConnection(connection);
SqlCommand cmd = new SqlCommand(cmdStirng, connect);
try
{
if (connect.State == ConnectionState.Closed)
{
connect.Open();
IDataReader dr = cmd.ExecuteReader();
getCataList.Clear();
while (dr.Read())
{
getCataList.Add(dr["name"].ToString());
}
dr.Close();
}
}
catch (SqlException e)
{
//MessageBox.Show(e.Message);
}
finally
{
if (connect != null && connect.State == ConnectionState.Open)
{
connect.Dispose();
}
}
return getCataList;
}
/// <summary>
///
/// </summary>
/// <param name="connection"></param>
/// <returns></returns>
public List<string> GetTables(string connection)
{
List<string> tablelist = new List<string>();
SqlConnection objConnetion = new SqlConnection(connection);
try
{
if (objConnetion.State == ConnectionState.Closed)
{
objConnetion.Open();
DataTable objTable = objConnetion.GetSchema("Tables");
foreach (DataRow row in objTable.Rows)
{
tablelist.Add(row[2].ToString());
}
}
}
catch
{
}
finally
{
if (objConnetion != null && objConnetion.State == ConnectionState.Closed)
{
objConnetion.Dispose();
}
}
return tablelist;
}
/// <summary>
///
/// </summary>
/// <param name="connection"></param>
/// <param name="TableName"></param>
/// <returns></returns>
public List<string> GetColumnField(string connection, string TableName)
{
List<string> Columnlist = new List<string>();
SqlConnection objConnetion = new SqlConnection(connection);
try
{
if (objConnetion.State == ConnectionState.Closed)
{
objConnetion.Open();
}
SqlCommand cmd = new SqlCommand("Select Name FROM SysColumns Where id=Object_Id('" + TableName + "')", objConnetion);
SqlDataReader objReader = cmd.ExecuteReader();
while (objReader.Read())
{
Columnlist.Add(objReader[0].ToString());
}
}
catch
{
}
objConnetion.Close();
return Columnlist;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
우분투에 SQL 서버 설치Microsoft SQL Server는 오늘날 업계에서 가장 눈에 띄는 데이터베이스 중 하나입니다. 이번 포스팅에서는 우분투에 설치하는 방법을 알려드리겠습니다. sudo 권한이 있는 계정 1단계: 터미널 열기 단축키...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.