无法绑定多部分标识符 sql

时间:2022-11-23
本文介绍了无法绑定多部分标识符 sql的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我在以下查询中得到 multipart can not be bound 错误

I get multipart can not be bound error on following query

update nfltx
set 
b.boxno = a.boxno,
b.message = a.message,
b.nameboxno = a.nameboxno,
b.namemsg = a.namemsg,
b.phoneboxno = a.phoneboxno,
b.phonemsg = a.phonemsg

FROM ofltx a JOIN nfltx b 
ON a.ls_fullnam = b.ls_fullnam

但是如果我从 boxno 消息中删除 b 并且所有我都不会收到错误消息.这背后的原因是什么.感谢您使用 sql server 2008

but if i remove b from boxno message and all i do not get the error . What is the reason behind this. Thank You using sql server 2008

推荐答案

在 FROM 子句中指定的表别名不能用作 SET column_name 中的限定符.这是无效的:

A table alias specified in a FROM clause cannot be used as a qualifier in SET column_name. This is not valid:

update nfltx
set 
b.boxno = a.boxno,
b.message = a.message,
b.nameboxno = a.nameboxno,
b.namemsg = a.namemsg,
b.phoneboxno = a.phoneboxno,
b.phonemsg = a.phonemsg

FROM ofltx a JOIN nfltx b 
ON a.ls_fullnam = b.ls_fullnam

要使其工作,请删除 b.列名的别名.

To make it work, remove the b. alias from the column name.

update nfltx
set 
boxno = a.boxno,
message = a.message,
nameboxno = a.nameboxno,
namemsg = a.namemsg,
phoneboxno = a.phoneboxno,
phonemsg = a.phonemsg

FROM ofltx a JOIN nfltx b 
ON a.ls_fullnam = b.ls_fullnam

拉杰

这篇关于无法绑定多部分标识符 sql的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:在存储过程结束时显式删除本地临时表有什么好处? 下一篇:将 varchar 转换为 float IF ISNUMERIC

相关文章

最新文章