Możesz zapytać SQL Server, aby sprawdzić istnienie obiektów.
Aby sprawdzić istnienie bazy danych, możesz użyć tego zapytania:
SELECT * FROM master.dbo.sysdatabases WHERE name = 'YourDatabase'
Aby sprawdzić istnienie tabeli, możesz użyć tego zapytania w docelowej bazie danych:
SELECT * FROM sys.tables WHERE name = 'YourTable' AND type = 'U'
Poniższy link pokazuje, jak sprawdzić istnienie bazy danych w SQL Server za pomocą kodu VB.NET:
Sprawdź, czy baza danych SQL istnieje na serwerze z vb.net
Kod referencyjny z powyższego linku:
Możesz wykonać sprawdzenie w inny sposób, więc odbywa się to w jednym wywołaniu, używając EXISTS
sprawdź zarówno bazę danych, jak i tabelę:
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
Wywołując powyższy kod raz z parametrami bazy danych i nazwy tabeli, będziesz wiedział, że oba istnieją.