SQL(MySql)外键和复合键语法错误
我是SQL新手,我正在努力找出我在这里做错了什么。我得到的错误是: #1064-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行中使用“Cast(movieId int,actorId int,salary decimal(7,2))默认值“77777”,fore”的正确语法SQL(MySql)外键和复合键语法错误,mysql,sql,Mysql,Sql,我是SQL新手,我正在努力找出我在这里做错了什么。我得到的错误是: #1064-您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以了解在第1行中使用“Cast(movieId int,actorId int,salary decimal(7,2))默认值“77777”,fore”的正确语法 create table Cast( movieId int, actorId int, salary decimal(7,2) default '77777.77', primary key
create table Cast(
movieId int,
actorId int,
salary decimal(7,2) default '77777.77',
primary key(movieId,actorId)
foreign key(actorId) references Actor(actorId),
foreign key(movieId) references Movie(movieId)
);
当您使用Cast(…
时,在Cast
和(
)之间没有空格,MySQL认为您正在尝试使用。遵循CREATE TABLE
没有任何意义,因此MySQL感到困惑
看
如果在paren前面加一个空格,就解决了这个问题
create table Cast (
^
你还有一个小错误,你的主键后面忘了一个逗号。bill->他在这行主键的末尾也少了一个逗号(movieId,actorId)@SeanCh,谢谢,我在回答的末尾没有提到吗?