Sie können SQL Server abfragen, um das Vorhandensein von Objekten zu überprüfen.
Um die Existenz der Datenbank zu überprüfen, können Sie diese Abfrage verwenden:
SELECT * FROM master.dbo.sysdatabases WHERE name = 'YourDatabase'
Um das Vorhandensein einer Tabelle zu überprüfen, können Sie diese Abfrage für Ihre Zieldatenbank verwenden:
SELECT * FROM sys.tables WHERE name = 'YourTable' AND type = 'U'
Der folgende Link zeigt Ihnen, wie Sie mithilfe von VB.NET-Code prüfen, ob die Datenbank in SQL Server vorhanden ist:
Überprüfen Sie, ob die SQL-Datenbank auf einem Server mit vb.net existiert
Referenzierter Code von obigem Link:
Sie könnten die Überprüfung auch auf andere Weise durchführen, sodass sie in einem einzigen Aufruf mit einem EXISTS
durchgeführt wird prüfen Sie sowohl die Datenbank als auch eine Tabelle:
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
Indem Sie den obigen Code einmal mit Parametern für Datenbank- und Tabellenname aufrufen, wissen Sie, dass beide existieren.