私のデータベース所有者はマスター データベースに対する権限を持っていません。SQL Server サーバーが存在するかどうか、およびそのサーバーにデータベースが存在するかどうかを確認する方法を探しています。
1170 次
2 に答える
0
まず、ローカル マシンで sqlserver のインスタンスが利用可能かどうかを確認します。
これは、次のような SMO ( SMOの参照と別の参照)を介して実行できます。
using Microsoft.SqlServer.Management.Smo;
DataTable dataTable = SmoApplication.EnumAvailableSqlServers(true);//if true is passed it
//will enumerate local instance only.
foreach (DataRow dataRow in dataTable)
{
if ((dataRow["Server"] as string) == "MyServerName")
Console.WriteLine(dataRow["Instance"] as string);
}
次に、必要なデータベースが利用可能かどうかを確認するには、次を使用します。
データベースが存在する場合はその ID を返し、存在しない場合は null を返す関数 db_id を使用します。以下の T-SQL の例:
if (db_id('INVENTORY') is null)
begin
return 0
end
else
begin
return 1
end
お役に立てれば。
于 2012-07-16T13:01:45.530 に答える
0
SMOを使用して、SQL サーバー オブジェクト モデルを管理できます。
于 2012-07-16T12:41:44.110 に答える