6

我有一个将 SELECT INTO 运行到表中的脚本。据我所知,没有其他过程可能同时引用/修改此表。但是,偶尔会出现以下错误:

创建目标表后,架构发生了变化。重新运行 Select Into 查询。

什么会导致此错误以及如何避免它?

我做了一些谷歌搜索,这个链接表明如果没有一些疯狂的 try-catch-retry 逻辑,就不能安全地使用 SELECT INTO。真的是这样吗?

我正在使用 SQLServer 2012。

4

1 回答 1

2

除非您真的事先不知道字段和数据类型,否则我建议您先创建表,然后使用 Insert 语句添加数据。在您的链接中,David Moutray 提出了同样的建议,这是他的示例代码逐字记录:

CREATE TABLE #TempTableY (ParticipantID  INT  NOT NULL);

INSERT #TempTableY (ParticipantID)
SELECT ParticipantID
FROM   TableX;
于 2013-09-11T21:50:24.657 回答