1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Probleme beim Datenbank-modell

Dieses Thema im Forum "Datenmodellierung, Datenbank-Design" wurde erstellt von Leander, 26 Februar 2012.

  1. Leander

    Leander Neuer Benutzer

    Hallo,
    ich versuche mich an einem etwas größeren Datenbank modell für ein Projekt an dem ich arbeite....aber ich krige beim forward engeneering immer fehler mit dem foreign key vom table fort.
    Was mache ich falsch??
    Hier der Link zu meinem Modell (Mysql workbench)(ich hoffe das ist erlaubt, da ich die datei komischerweise nicht einfach so hochladen kann): ul.to/nginzvaj
    Der von Mysql erstellt Code wär zulang um das übersichtlich zu halten....
     
  2. Leander

    Leander Neuer Benutzer

    ok neues Problem:

    ERROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ,

    CONSTRAINT `landattacker`

    FOREIGN KEY (`attacker` )

    REFERENCES `Br' at line 20







    -- -----------------------------------------------------

    -- Table `Browsergame 1. Version`.`Landbattles`

    -- -----------------------------------------------------

    CREATE TABLE IF NOT EXISTS `Browsergame 1. Version`.`Landbattles` (

    `idLandbattles` INT NOT NULL ,

    `attacker` INT NULL ,

    `defender` INT NULL ,

    `time` TIME NULL ,

    `attackerarmy` INT NULL ,

    `defenderarmy` INT NULL ,

    `defenderdefeat` TINYINT(1) NULL DEFAULT NULL ,

    `eventid` INT NULL ,

    `eventsystem` INT NULL ,

    PRIMARY KEY (`idLandbattles`) ,

    INDEX `landattacker` (`attacker` ASC) ,

    INDEX `landdefender` (`defender` ASC) ,

    INDEX `attackerarmy` (`attackerarmy` ASC) ,

    INDEX `defenderarmy` (`defenderarmy` ASC) ,

    INDEX `eventid` (`eventid` ASC) ,

    INDEX `eventsystemid` () ,

    CONSTRAINT `landattacker`

    FOREIGN KEY (`attacker` )

    REFERENCES `Browsergame 1. Version`.`Player` (`id` )

    ON DELETE NO ACTION

    ON UPDATE NO ACTION,

    CONSTRAINT `landdefender`

    FOREIGN KEY (`defender` )

    REFERENCES `Browsergame 1. Version`.`Player` (`id` )

    ON DELETE NO ACTION

    ON UPDATE NO ACTION,

    CONSTRAINT `attackerarmy`

    FOREIGN KEY (`attackerarmy` )

    REFERENCES `Browsergame 1. Version`.`Army` (`idarmy` )

    ON DELETE NO ACTION

    ON UPDATE NO ACTION,

    CONSTRAINT `defenderarmy`

    FOREIGN KEY (`defenderarmy` )

    REFERENCES `Browsergame 1. Version`.`Army` (`idarmy` )

    ON DELETE NO ACTION

    ON UPDATE NO ACTION,

    CONSTRAINT `eventid`

    FOREIGN KEY (`eventid` )

    REFERENCES `Browsergame 1. Version`.`EventsforPlayer` (`idEvents` )

    ON DELETE NO ACTION

    ON UPDATE NO ACTION,

    CONSTRAINT `eventsystemid`

    FOREIGN KEY ()

    REFERENCES `Browsergame 1. Version`.`Systemevents` ()

    ON DELETE NO ACTION

    ON UPDATE NO ACTION)

    ENGINE = InnoDB


    Ich find keinen Syntax-Fehler...ist mir irgendwo ein Fehler unterlaufen??
     
  3. ukulele

    ukulele Datenbank-Guru

    Ich nutze sehr selten MySQL und irgendwie sieht die Syntax komplett anders aus als bei MSSQL, was eigentlich nicht so unterscheidlich sein dürfte.

    Bist du sicher das ` ein korrektes Zeichen in der Syntax ist? Ich würde ' oder [] bevorzugen und auch nur da nutzen, wo es nötig ist. Außerdem würde ich Constraints-, Tabellen- und Spaltennamen immer so wählen, das sie zusannen oder mit _ geschrieben werden und nicht etwas wie `Browsergame 1. Version`.`Army`
     
  4. Leander

    Leander Neuer Benutzer

    doch, das stimmt....hab nen dummen Fehler entdeckt :D

    INDEX `eventsystemid` () ,

    Da muss natürlich was in der Klammer stehen^^
     
Die Seite wird geladen...

Diese Seite empfehlen