Einzelnen Beitrag anzeigen

fanavity

Registriert seit: 2. Sep 2011
65 Beiträge
 
#1

Prüfen ob Tabelle existiert

  Alt 13. Sep 2011, 14:22
Datenbank: MSSQL • Version: 2008 • Zugriff über: BDE/ODBC
Hallo,

wie genau kann ich prüfen ob eine Tabelle existiert? Wenn ich dem Query1 eine Variable zuweise und diese anschließend prüfen will, passiert rein garnichts..

Delphi-Quellcode:
Query1.close;
     Query1.sql.clear;
     test2 := Query1.sql.add('SELECT COUNT( * ) FROM sysobjects WHERE name = "'+tabelle+'"');
     Query1.Open;
     showmessage(IntToSTr(test2));
Der gibt mir kein fenster aus... Denn ich will, bevor ich die tabelle beschreibe prüfen ob sie vorhanden ist.. Denn folgendes klappt irgendwie nicht:

Delphi-Quellcode:
Query1.sql.add('IF EXISTS (SELECT * FROM dbo.SYSOBJECTS WHERE name="'+tabelle+'")');
          Query1.sql.add('INSERT INTO '+tabelle+' (ID, test, test2, test3, test4)');
          Query1.sql.add('VALUES (:id, :test, :test2, :test3, :test4)');
Hat da jemand vielleicht eine Idee?

Denn wenn Fall eins klappen würde, könnte ich in Delphi ne einfache If-Abfrage machen und ggf die Tabelle befüllen oder ne MSG-Box ausgeben das sie erst erstellt werden muss..

PS: Bei der Variante eins gibt er mir immer eine Fehlermeldung: Query1: Das Feld 'id' wurde nicht gefunden

Geändert von fanavity (13. Sep 2011 um 14:25 Uhr)
  Mit Zitat antworten Zitat