Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Huhu,

ich hab ein Problem mit dem Skript hier, in der Schule unter Windows Server2000 läuft das ohne Probleme durch, unter MySQL nicht

CREATE TABLE lieferant

( lnr CHAR(3) NOT NULL,

lname VARCHAR(7) NOT NULL,

status TINYINT NULL,

lstadt VARCHAR(12) NULL,

CONSTRAINT pk_lf PRIMARY KEY (lnr),

CONSTRAINT ck_lnr_lf CHECK (lnr BETWEEN 'L01' AND 'L99'),

CONSTRAINT ck_status_lf CHECK (status > 0));

CREATE TABLE artikel

( anr CHAR(3) NOT NULL,

aname VARCHAR(12) NOT NULL,

farbe VARCHAR(5) NULL,

gewicht TINYINT NOT NULL,

amenge SMALLINT NOT NULL,

astadt VARCHAR(12) NOT NULL,

CONSTRAINT pk_art PRIMARY KEY (anr),

CONSTRAINT ck_anr_art CHECK (anr BETWEEN 'A01' AND 'A99'),

CONSTRAINT ck_farbe_art CHECK (farbe IN ('rot', 'grün', 'blau')),

CONSTRAINT ck_gewicht_art CHECK (gewicht > 0),

CONSTRAINT ck_amenge_art CHECK (amenge >= 0));

**********************************************************

bis hier funzt es, die Tabelle 'Lieferung' kann aber nicht erstell werden

ERROR 1005(HY000):Cant't create table '.\daba\lieferung.frm'

'daba' ist meine Testdatenbank

CREATE TABLE lieferung

( lnr CHAR(3) NOT NULL,

anr CHAR(3) NOT NULL,

ldatum DATETIME NOT NULL,

lmenge TINYINT NOT NULL,

CONSTRAINT pk_lfg PRIMARY KEY (lnr, anr, ldatum),

CONSTRAINT fk_lnr_lfg FOREIGN KEY (lnr) REFERENCES lieferant,

CONSTRAINT fk_anr_lfg FOREIGN KEY (anr) REFERENCES artikel,

CONSTRAINT ck_lmenge_lfg CHECK (lmenge > 0));

Ich kenn mich noch nicht gut aus mit MySQL, kann mir vielleicht einer weiterhelfen? Es liegt verm mal wieder an irgendeiner Kleinigkeit:rolleyes:

Vielen Dank im Vorraus

Lyni

Geschrieben
Huhu,

ich hab ein Problem mit dem Skript hier, in der Schule unter Windows Server2000 läuft das ohne Probleme durch, unter MySQL nicht

...

...

Vielen Dank im Vorraus

Lyni

Entschuldige bitte die Anmerkung, aber Windows Server 2000 ist leider kein RDBMS.

Frage:

Habt ihr in der Schule auch MySQL verwendet, oder vielleicht Access oder MS SQL?

Andere Frage an die Allgemeinheit:

Seit wann unterstzütz MySQL Foreign-Keys?

Habe ind er Doku von MySQL dazu nur folgende Stellen gefunden

In MySQL Server 3.23.44 and up, the InnoDB storage engine supports checking of foreign key constraints, including CASCADE, ON DELETE, and ON UPDATE. See Section 14.2.6.4, “FOREIGN KEY Constraintsâ€.

For storage engines other than InnoDB, MySQL Server parses the FOREIGN KEY syntax in CREATE TABLE statements, but does not use or store it. In the future, the implementation will be extended to store this information in the table specification file so that it may be retrieved by mysqldump and ODBC. At a later stage, foreign key constraints will be implemented for MyISAM tables as well.

Quelle:

MySQL 5.0 Reference Manual :: 1 General Information :: 1.9 MySQL Standards Compliance :: 1.9.5 MySQL Differences from Standard SQL :: 1.9.5.5 Foreign Keys

To create an InnoDB table, you must specify an ENGINE = InnoDB option in the CREATE TABLE statement

Quelle:

MySQL 5.0 Reference Manual :: 14 Storage Engines and Table Types :: 14.2 The InnoDB Storage Engine :: 14.2.6 Creating and Using InnoDB Tables

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...