2012-03-20 4 views
0

폼 앱에 두 개의 콤보 상자가 있습니다. 양식로드시 다음을 수행합니다.C#에서 지정된 서버의 데이터베이스 목록을 검색하는 방법은 무엇입니까?

combobox1.items.add(system.environment.machinename). 

그게 전부입니다. 이제 두 번째 콤보 상자에 선택한 서버의 데이터베이스를 채 웁니다. 어떻게해야합니까?

private void comboBox1_SelectionChangeCommitted(object sender, EventArgs e) 
{ 
    ???????? 
} 
+0

** ** 데이터베이스 **! 이 작업을 수행하는 전 세계적으로 통일 된 통일 된 방법은 없습니다. 모든 데이터베이스는이 작업을 수행하는 방법이 조금 다릅니다. 그래서 우리는 ** 당신이 사용하고있는 ** 데이터베이스 (그리고 어떤 버전)인지를 확실히 알아야합니다! –

답변

1

SQL Server를 사용하는 경우

.NET에서 당신이 SQL Server Management Objects

Microsoft.SqlServer.Management.Smo.Server server = new Microsoft.SqlServer.Management.Smo.Server("localhost"); 
foreach (Database db in server.Databases) { 
    Console.WriteLine(db.Name); 
} 
0

를 사용하려고하면 다음 쿼리와 데이터베이스를 가질 수 있습니다

SELECT name 
FROM sys.databases 

을 당신 프로 시저 sp_databases도 실행할 수 있습니다.

EXEC sp_databases 
+0

OP에는 서버 이름이 있지만 SQL Server는 해당 서버에서 인스턴스를 찾아야합니다. – slugster

관련 문제