Můžete se dotazovat na SQL Server a zkontrolovat existenci objektů.
Pro kontrolu existence databáze můžete použít tento dotaz:
SELECT * FROM master.dbo.sysdatabases WHERE name = 'YourDatabase'
Pro kontrolu existence tabulky můžete použít tento dotaz proti vaší cílové databázi:
SELECT * FROM sys.tables WHERE name = 'YourTable' AND type = 'U'
Tento odkaz níže ukazuje, jak zkontrolovat existenci databáze SQL Server pomocí kódu VB.NET:
Zkontrolujte, zda na serveru s vb.net existuje databáze SQL
Odkazovaný kód z výše uvedeného odkazu:
Kontrolu můžete provést jiným způsobem, takže se provede v jediném volání pomocí EXISTS
zkontrolujte databázi i tabulku:
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
Zavoláním výše uvedeného kódu jednou s parametry pro databázi a název tabulky budete vědět, že obojí existuje.