Announcement

Collapse
No announcement yet.

Tabelle vorhanden?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Tabelle vorhanden?

    Hallo Zusammen,

    aus sicherheitstechnischen Gründen bin ich gezwungen eine Access Anwendung auf sql-Express 2005 einzurichten.
    Detailiert:
    Beim wiederholten Datenimport von Excel-Dateien sollte ich feststellen können, ob eine bestimmte Tabelle in SQL vorhanden ist und diese ggf. löschen.
    Momentan Versuche ich mit Access + VBA über den Connectionstring eine Lösung zu finden, aber ohne Erfolg.
    Habt Ihr ein Idee?

    mfg mpeit

  • #2
    Relativ einfach möglich über die Object_ID - du machst dieses Select:

    select Isnull(object_id('tabellenname'), -1)

    ist das Ergebnis -1, dann gibt es diese Tabelle nicht, ansonsten schon.

    bye,
    Helmut

    PS: geht auch für andere Objekte wie stored procs, trigger, ...

    Comment


    • #3
      Originally posted by hwoess View Post
      Relativ einfach möglich über die Object_ID - du machst dieses Select:

      select Isnull(object_id('tabellenname'), -1)

      ist das Ergebnis -1, dann gibt es diese Tabelle nicht, ansonsten schon.

      bye,
      Helmut

      PS: geht auch für andere Objekte wie stored procs, trigger, ...
      Das gilt nur für Objekte die im Schema dbo liegen..
      Sollte man mit mehreren Schemas arbeiten, sollte man noch unbedingt das Schema angeben, in dem die Tabelle liegt.

      [HIGHLIGHT="SQL"] select Isnull(object_id('SchemaName.TabellenName', 'U'), -1)[/HIGHLIGHT]

      Wenn man nur Tabellen überprüfen will, kann man als zweiten Parameter noch den Typ des Objektes angeben.
      (Mit anderen Worten Helmuts Beispiel sagt nur aus, das es ein Objekt dieses
      Namens gibt, wenn das Ergenis <> -1 ist...)

      Comment

      Working...
      X