求教,有数据的两个表怎么用外键关联起来

aliensbb 2017-04-16 10:32:11
现在有两个表biao1和biao2,表结构如下
create table biao1
(
id int not null identity
primary key,
firsname varchar(10),
lastname varchar(10),
girlfr varchar(10)
)
create table biao2
(
id int not null identity
primary key,
firsname varchar(10),
lastname varchar(10),
girlfrname varchar(20),
biao1id int
references biao1 (id)
)
里面的数据如下


现在要在不删除表中数据的情况下,将表2的biao1id那一列的数据填充成表一中的id,我现在想到的就是能通过firstname 和lastname唯一确定一个记录,然后再来对应填充,语句如下,但是有问题,所以不晓得怎么解决了,还请大神指导、

update biao2 set biao2.biao1id=biao1.id where biao2.firsname=biao1.firsname and biao2.lastname=biao1.lastname
错误提示[2017-04-16 22:24:37] [S0001][4104] 无法绑定由多个部分组成的标识符 "biao1.firsname"。


...全文
319 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoxiangqing 2017-04-16
  • 打赏
  • 举报
回复
update biao2 set biao2.biao1id=biao1.id from biao1 where biao2.firsname=biao1.firsname and biao2.lastname=biao1.lastname
aliensbb 2017-04-16
  • 打赏
  • 举报
回复
引用 1 楼 sinat_28984567 的回复:
试试这个:
UPDATE  a
SET     a.biao1id = b.id
FROM    biao2 a ,
        biao1 b
WHERE   a.firsname = b.firsname
        AND a.lastname = b.lastname;
谢谢大哥,是这样的。
二月十六 2017-04-16
  • 打赏
  • 举报
回复
试试这个:
UPDATE  a
SET a.biao1id = b.id
FROM biao2 a ,
biao1 b
WHERE a.firsname = b.firsname
AND a.lastname = b.lastname;

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧