Erstellen der Tabellen einer Datenbank via SQL CREATE, wie?

Ich versuche, die Tabellen einer Datenbank mit SQL CREATE zu erstellen. Es handelt sich um drei Tabellen, von denen zwei anschließend unter Tables aufgeführt werden.

Wenn ich die dritte dann einzeln anlegen will, bekomme ich die Nachricht, dass die Tabelle schon existiert, obwohl sie in keinem Dialog angezeigt wird (z.B. Relashionships).

Außerdem ist die Relation Aufträge zu Kunden unvollständig. Wenn ich die Verbindung doppelklicke, fehlt unter ‘Kunden’ der Primary Key.

Was ist da falsch?

Hier sind die SQL Statements:

drop table Positionen if exists
drop table Aufträge if exists
drop table kunden if exists

create table kunden (
id int generated by default as identity primary key,
anrede varchar (50),
titel date,
name varchar (100),
vorname varchar (100),
straße varchar (100),
plz varchar (50),
ort varchar (100)
);

create table Aufträge (
id int generated by default as identity primary key,
kundenid int,
auftragsnummer varchar (10),
auftragsdatum date,
kundenname varchar (100),
foreign key (kundenid) references kunden (id) on delete cascade on update cascade
);

create table Positionen (
id int generated by default as identity primary key,
auftragsid int,
art varchar (10),
Dimension varchar (100),
LI varchar (100),
SI varchar (100),


Beschreibung varchar (100),
Anzahl decimal (10,2),
Preis decimal (10,2),
foreign key (auftragsid) references aufträge (id) on delete cascade on update cascade
);




Bug in 7.3.3.

In 7.2.7 funktioniert es.

Irrtum.

Es geht immer nur einmal in einer neuen Datenbank. Alle nachfolgenden Versuche z.B. mit einer neuen Tabelle werden mit ‘successful’ quittiert, aber die Tabelle taucht nirgendwo auf.

Wenn man versucht, sie einzeln mit SQL anzulegen, bekommt man die Nachricht, dass die Tabelle bereits existiert.

Das ist in beiden Versionen so.Änderungen an den im ersten Versuch aufgenommenen Tabellen funktionieren aber.

Was mache ich da falsch?

Mal vorab zur Info:

Handbücher

Seite von @RobertG Familie Robert Großkopf

Vielleicht vergisst Du für die weitere Verarbeitung einfach, einmal Ansicht → Tabellen aktualisieren durch zu führen. Schließlich gehst Du über die direkte Eingabe sozusagen an der GUI vorbei.

Ich habe das nach jeder erstellten Tabelle gemacht. Der Code funktioniert einwandfrei. Die Beziehungen werden auch erstellt. Probleme sehe ich, wenn alles in Kleinbuchstaben und mit Umlauten unmaskiert angegeben wird. Dann wird aus straße anschließend STRASSE.

1 Like

Genau so ist es. Auf die Idee wäre ich gar nicht gekommen.

Vielen lieben Dank.

1 Like