SQL Serverにクエリを実行して、オブジェクトの存在を確認できます。
データベースの存在を確認するには、次のクエリを使用できます:
SELECT * FROM master.dbo.sysdatabases WHERE name = 'YourDatabase'
テーブルの存在を確認するには、ターゲットデータベースに対して次のクエリを使用できます。
SELECT * FROM sys.tables WHERE name = 'YourTable' AND type = 'U'
以下のリンクは、VB.NETコードを使用してデータベースの存在がSQLServerであることを確認する方法を示しています。
vb.netを使用するサーバーにSQLデータベースが存在するかどうかを確認する
上記のリンクからの参照コード:
別の方法でチェックを実行できるため、EXISTS
を使用して1回の呼び出しでチェックを実行できます。 データベースとテーブルの両方を確認してください:
IF NOT EXISTS (SELECT * FROM master.dbo.sysdatabases WHERE name = 'YourDatabase')
BEGIN
-- Database creation SQL goes here and is only called if it doesn't exist
END
-- You know at this point the database exists, so check if table exists
IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'YourTable' AND type = 'U')
BEGIN
-- Table creation SQL goes here and is only called if it doesn't exist
END
データベースとテーブル名のパラメータを使用して上記のコードを1回呼び出すと、両方が存在することがわかります。