2

尝试调整从一个表到另一个表的简单更新时遇到问题:

UPDATE t2 
SET Country_FK = t1.Country_ID 
FROM dbo.CountryCity t2
INNER JOIN dbo.Country t1 ON t2.country = t1.ISO

做一些研究,SQL Server CE 不喜欢FROM连接中的子句。

我似乎无法正确使用 SQL Server CE 的语法。

任何建议都非常受欢迎。

谢谢!!

4

1 回答 1

0

是的,根据 SQL CE参考, .FROM中不支持子句UPDATE。你也不能这样做,UPDATE CountryCity SET Country_FK = (SELECT Country_ID FROM Country...因为SET只接受一个标量并SELECT返回一个选择。

您将必须分配第一个或唯一的值

SELECT Country_ID FROM Country c
INNER JOIN CountryCity cc ON cc.country = c.ISO
WHERE you need something here to specify one country instead of every country that has any matching ISO

CountryCity.Country_FK WHERE country = same country you specified above

这必须在调用 SQL 命令的任何脚本或应用程序中完成,不能在 SQL CE 中完成。

于 2013-07-25T18:58:18.830 回答