Lynette Geschrieben 18. März 2006 Teilen Geschrieben 18. März 2006 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schiller256 Geschrieben 18. März 2006 Teilen Geschrieben 18. März 2006 Welche Version von MySQL verwendest du? Bei mir gibt es keinen Fehler wenn ich die Statements absetze. Ich habe als MySQL Version die 5.0.18 laufen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Ramses_PyramidenVerleih Geschrieben 18. März 2006 Teilen Geschrieben 18. März 2006 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.