我做了一个eer图,我试图向前工程,但我得到这个错误,我找不到错误。
在服务器中执行sql脚本错误:错误1064:您的sql语法有错误;检查与您的mariadb服务器版本相对应的手册,了解使用“index”附近的正确语法 fk_User_Wallets1_idx
( Wallets_idWallets
asc)可见,第13行的“约束”
sql代码:
CREATE TABLE IF NOT EXISTS `mydb`.`User` (
`idUser` INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(45) NULL,
`email` VARCHAR(45) NULL,
`adress` VARCHAR(45) NULL,
`password` VARCHAR(45) NULL,
`saldo` INT NULL,
`date_start` DATETIME NULL,
`date_end` DATETIME NULL,
`Rolls_idRolls` INT NOT NULL,
`Wallets_idWallets` INT NOT NULL,
PRIMARY KEY (`idUser`, `Rolls_idRolls`, `Wallets_idWallets`),
INDEX `fk_User_Rolls1_idx` (`Rolls_idRolls` ASC) VISIBLE,
INDEX `fk_User_Wallets1_idx` (`Wallets_idWallets` ASC) VISIBLE,
CONSTRAINT `fk_User_Rolls1`
FOREIGN KEY (`Rolls_idRolls`)
REFERENCES `mydb`.`Rolls` (`idRolls`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_User_Wallets1`
FOREIGN KEY (`Wallets_idWallets`)
REFERENCES `mydb`.`Wallets` (`idWallets`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
SQL script execution finished: statements: 11 succeeded, 1 failed
Fetching back view definitions in final form.
Nothing to fetch
3条答案
按热度按时间oyxsuwqo1#
这是mysql版本的问题,删除可见的。手动运行代码。或者将mysql服务器和客户端更新为同一版本(
Wallets_idWallets
asc)可见(Wallets_idWallets
asc公司)xpszyzbs2#
在转发工程之前,请勾选以下选项并继续此过程,
转到要创建的数据库的set options下的option部分>
跳过创建外键
也可以跳过索引的创建
生成单独的create index语句
为表生成insert语句
继续推进工程进程。
kqhtkvqz3#
你能加引擎吗
engine=innodb default charset=utf8 collate=utf8\u unicode\u ci