2017-06-26 8 views
0

私はMySQLには新しく、現在はMySQLワークベンチを試しています。私はモデルから単純なデータベーススキーマをエンジニアに転送しようとしています。私はこれを行うしようとするたびに、しかし、それは私に次のエラーを与える:MySQLフォワードエンジニアリングのエラー1064

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 'NOT NULL, 
`tbl_Arti_id_Arti` INT NOT NULL, 
`tbl_Usr_id_Usr` INT NOT NULL, 
' at line 6 

私は、誰もがそれを修正する方法へと私を指すことができればしかし、私は思っていた、構文が間違っていることを理解しています。


EDIT: オート下に見つけてくださいステートメントを作成生成:事前に

 CREATE TABLE IF NOT EXISTS `AstuteSchema`.`tbl_authorArti` (
     `id_usrArti` VARCHAR(45) NOT NULL, 
     `usrArti_IsPri` VARCHAR NOT NULL, 
     `tbl_Arti_id_Arti` INT NOT NULL, 
     `tbl_Usr_id_Usr` INT NOT NULL, 
     PRIMARY KEY (`id_usrArti`), 
     INDEX `fk_tbl_authorArti_tbl_Arti1_idx` (`tbl_Arti_id_Arti` ASC), 
     INDEX `fk_tbl_authorArti_tbl_Usr1_idx` (`tbl_Usr_id_Usr` ASC), 
     CONSTRAINT `fk_tbl_authorArti_tbl_Arti1` 
     FOREIGN KEY (`tbl_Arti_id_Arti`) 
     REFERENCES `AstuteSchema`.`tbl_Arti` (`id_Arti`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION, 
     CONSTRAINT `fk_tbl_authorArti_tbl_Usr1` 
     FOREIGN KEY (`tbl_Usr_id_Usr`) 
     REFERENCES `AstuteSchema`.`tbl_Usr` (`id_Usr`) 
     ON DELETE NO ACTION 
     ON UPDATE NO ACTION) 
    ENGINE = InnoDB 

感謝を。

+0

構文がWorkbenchによって自動生成されている場合は、できることはあまりありません。いずれにしても、そのクエリのコンテキストをチェックして、関連する列に何か不思議なものがあるかどうかを確認できます。 –

+0

@OP:* CREATE *ステートメントを投稿してください。エラーの原因を予測することが困難な場合を除きます。 –

+0

@ÁlvaroGonzález上記の編集を参照してください。 –

答えて

0

エラーメッセージがあなたの正確な場所を伝えます:

どうやら
`usrArti_IsPri` VARCHAR NOT NULL, 
        ^

、あなたのモデルはusrArti_IsPriのサイズを設定しないと、コードジェネレータは、それを検証する気にしません。