您好,我在网站 w3school 中测试了代码外键,没有错误添加外键 但我编码这个数据库银行返回我 erroe 1215 或不添加外键 我在 php 中测试了我的管理员和工作台并返回错误 1215
create database `bank`;
create table `bank`.`customer`(
`cname` char(10)not null ,
`ccity` char(10)not null ,
`cstreet` char(10)not null,
constraint `customer_pk` PRIMARY KEY(`cname`)
);
create table `bank`.`branch`(
`bname` char(10)not null ,
`bcity` char(10) not null,
constraint `branch_pk` PRIMARY KEY(`bname`)
);
create table `bank`.`deposit`(
`cname` char(10) ,
`bname` char(10) ,
`ano` char(10)not null,
`balance` integer,
constraint `deposit_pk` primary KEY(`ano`),
constraint `deposit_fk_1` foreign KEY(`cname`) references`customer`(`cname`),
constraint `deposit_fk_2` foreign key(`bname`) references`branch`(`bname`)
);
create table `bank`.`borrow`(
`cname` char(10),
`bname` char(10),
`lno` integer not null,
`amount` double,
constraint `borrow_pk` primary key (`lno`),
constraint `borrow_fk_1` foreign KEY(`cname`)references`customer`(`cname`),
constraint `borrow_fk_2` foreign KEY(`bname`) references`branch`(`bname`)
);
最佳答案
在REFERENCES 和TableName 之间添加空格。
试试这个:
CREATE DATABASE `bank`;
CREATE TABLE `bank`.`customer`
(
`cname` CHAR(10) NOT NULL,
`ccity` CHAR(10) NOT NULL,
`cstreet` CHAR(10) NOT NULL,
CONSTRAINT `customer_pk` PRIMARY KEY(`cname`)
);
CREATE TABLE `bank`.`branch`
(
`bname` CHAR(10) NOT NULL,
`bcity` CHAR(10) NOT NULL,
CONSTRAINT `branch_pk` PRIMARY KEY(`bname`)
);
CREATE TABLE `bank`.`deposit`
(
`cname` CHAR(10),
`bname` CHAR(10),
`ano` CHAR(10) NOT NULL,
`balance` INTEGER,
CONSTRAINT `deposit_pk` PRIMARY KEY(`ano`),
CONSTRAINT `deposit_fk_1` FOREIGN KEY(`cname`) REFERENCES `customer`(`cname`),
CONSTRAINT `deposit_fk_2` FOREIGN KEY(`bname`) REFERENCES `branch`(`bname`)
);
CREATE TABLE `bank`.`borrow`
(
`cname` CHAR(10),
`bname` CHAR(10),
`lno` INTEGER NOT NULL,
`amount` DOUBLE,
CONSTRAINT `borrow_pk` PRIMARY KEY(`lno`),
CONSTRAINT `borrow_fk_1` FOREIGN KEY(`cname`) REFERENCES `customer`(`cname`),
CONSTRAINT `borrow_fk_2` FOREIGN KEY(`bname`) REFERENCES `branch`(`bname`)
);
关于mysql - 如何解决无法添加外键约束的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34396904/