Tabelleninhalt kopieren (SQL)

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Tabelleninhalt kopieren (SQL)

Re: Tabelleninhalt kopieren (SQL)

von F3K Total » Mi, 23.12.2015 16:46

... oder du erzeugst doch noch einen Autowert ... das folgende Beispiel, geht dann, wenn alle ID's unterschiedlich sind, es darf keine doppelten geben!
Führe diese Kommandos, angepasst an deine Tabelle, einmal über Extras/SQL... aus_

Code: Alles auswählen

alter Table "Tabelle1" alter column "ID"  INTEGER
alter Table "Tabelle1" alter column "ID"  set NOT NULL;
alter Table "Tabelle1" ADD PRIMARY KEY ("ID");
alter Table "Tabelle1" alter column "ID" INTEGER GENERATED BY DEFAULT AS IDENTITY
Gruß R

Re: Tabelleninhalt kopieren (SQL)

von RobertG » Mi, 23.12.2015 12:13

Hallo Franky1112,

Du musst im SQL-Code alle Feldbezeichnungen und Tabellenbezeichnungen in doppelte Anführungszeichen setzen, sofern Du die interne HSQLDB nutzt. Bei externen Datenbanken können die Felder auch anders maskiert sein.
Maskierst Du Feldnamen nicht, so werden sie in Großbuchstaben umgewandelt.

Code: Alles auswählen

INSERT INTO "Betriebsstaette" ("BSTName", "BStNr", "PLZ", ... usw.
Gruß

Robert

Tabelleninhalt kopieren (SQL)

von Franky1112 » Mi, 23.12.2015 11:45

Hallo,

ich versuch einen Tabelleninhalt von einer in eine andere Tabelle zu kopieren.
Hintergrund:
In der alten Tabelle ließ sich der Primäry-Key nicht mehr zu einem Auto-Wert ändern, sondern nur über einen Umweg, indem ich die Tabelle nochmals unter einem anderen Namen erstellt habe.
Damit habe ich es versucht, jedoch ohne erfolg:

Code: Alles auswählen

INSERT INTO "Betriebsstaette" (BSTName, BStNr, PLZ, Ort, Strasse, Hausnummer, Ansprechpartner, Telefon, GebId,  UnternehmerID)
SELECT BSTName, BStNr, PLZ, Ort, Strasse, Hausnummer, Ansprechpartner, Telefon, GebId,  UnternehmerID
FROM "Standortdaten" WHERE "Standortdaten"."ID" <> 0
Dann habe ich es noch damit versucht:

Code: Alles auswählen

INSERT INTO "Betriebsstaette" (BSTName, BStNr)
SELECT BSTName, BStNr
FROM "Standortdaten" WHERE "Standortdaten"."ID" <> 0
bekomme dann die Fehlermeldung
1: Column not found: BSTNAME in statement [INSERT INTO "Betriebsstaette" (BSTName, BStNr)]

Wobei die Spalten definitiv vorhanden sind.

Wie geht's richtig?

Nach oben