很急的一个问题哈,为什么引用了表中的无效列
在做图书馆管理系统,我建立了两张表:(用的是SQLSERVER,所以不区分大小写!)
CREATE TABLE borrowBooksHistory(
num int not null primary key,/*纪录单的数字标号,唯一的,做主键用*/
readerIDNum char(8) NULL,/*借书证*/
××××××××
);
CREATE TABLE readerInfo(/*读者注册信息*/
readerlDNum char(8) not null primary key,/*借书证号码*/
××××××
);
想建立外健关系:
alter table borrowBooksHistory add constraint FK_borrowBooksHistory_readerInfo_1 foreign key(readerIDNum)
references readerInfo(readerIDNum)/*借阅表里面的借书证号码引用读者注册信息表*/
结果总是显示这个错误》》》》》》》》》》》》》
服务器: 消息 1770,级别 16,状态 1,行 1
外键 'FK_borrowBooksHistory_readerInfo_1 ' 引用了位于被引用表 'readerInfo ' 中的无效列 'readerIDNum '。
《《《《《《《《《《《《《《《《《《《《《《《
我查看这两 个表的基本信息都是正确的啊,都已经把这个属性raderIDum加进去了的啊,为什么会这样的啊???我建立的其他的borrowHistory的约束都是可以的啊,这个就是不行??怎么回事???
------解决方案----------------------try
ALTER TABLE [dbo].[borrowBooksHistory] ADD
CONSTRAINT [FK_borrowBooksHistory_readerInfo_1] FOREIGN KEY
(
[readerIDNum]
) REFERENCES [dbo].[readerInfo] (
[readerlDNum]
)
GO
------解决方案--------------------readerIDNum char(8) NULL,/*借书证*/ --你这里是id
readerlDNum char(8) not null primary key,/*借书证号码*/ --你这里是ld
i 和l 是不一样的
------解决方案--------------------楼主笔误导致这个低级错误 :)