Announcement

Collapse
No announcement yet.

Tabelle umbenennen mit SQL Befehl

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

  • Tabelle umbenennen mit SQL Befehl

    Ich möchte Tabellen mit einem SQL Befehl umbenenen
    Leider funktioniert unter Advantage
    ALTER TABLE <alter Tabellenname> RENAME <neuer Tabellenname> nicht.

    Wie muss ich das SQL Statement schreiben damit es funktioniert?

    Danke

  • #2
    Das funktioniert höchstwahrscheinlich überhaupt nicht (es sei denn, ausgerechnet ADS kennt es, dann müsstest du in der Doku fündig werden). Laut SQL-Dokumentation 2003 ist so etwas nicht vorgesehen. Auch im SQL-Standard 2011 sind nur folgende Aktionen vorgesehen:
    <add column definition> | <alter column definition> | <drop column definition>
    | <add table constraint definition> | <alter table constraint definition> | <drop table constraint definition>
    | <add table period definition> | <drop table period definition> | <add system versioning clause>
    | <drop system versioning clause>
    Es ist auch verständlich, dass <rename tablename> nicht möglich ist, weil in den internen Tabellendefinitionen sehr viele ForeignKeys berücksichtigt werden müssten. Es bietet sich deshalb nur das schrittweise Vorgehen an:
    1. CREATE TABLE mit Übernahme der "alten" Definition
    2. INSERT INTO <neu> SELECT * FROM <alt>
    3. DROP TABLE <alt>

    Gruß Jürgen

    Comment

    Working...
    X