SELECT * INTO newtable 不起作用

Posted

技术标签:

【中文标题】SELECT * INTO newtable 不起作用【英文标题】:SELECT * INTO newtable not working 【发布时间】:2018-06-08 23:41:24 【问题描述】:

所以在 Db2/IBM Data Studio 中我无法运行它:

SELECT * 
INTO newtable 
FROM oldtable

我收到此错误消息:

“newtable”在使用它的上下文中无效..sqlcode=-206 sqlstate=42703, driver=3.68.61。

表 newtable 尚不存在。 我研究了sqlcode,sqlstate -IBM error code resolve, 但它没有帮助。

为了澄清,我想将旧表复制为新表。

我知道有其他方法可以做同样的事情,但这个是最简单的,我想知道为什么它不起作用。

感谢您的宝贵时间。

【问题讨论】:

它不起作用,因为这样的语法不正确。 @mustaccio Here 是我找到语法的地方。你认为什么是正确的? 为什么会有人对此投反对票而不发表评论 考虑使用产品文档(针对您的特定 Db2 版本和平台)作为参考; SQL 方言在 DBMS 之间有所不同。 另一个很好的例子说明为什么 w3fools 不是可以依赖的资源。这甚至不接近标准 SQL。在标准 SQL(和 in DB2 as well)中,您需要使用 create table newtable as select * from oldtable 【参考方案1】:

Select into 用于 SQL Server(或其他不知道)。对于将查询保存到表中的 DB2 指令是:

create table newtable as (
SELECT * FROM oldtable
) with data

您可以找到更多选项here

【讨论】:

以上是关于SELECT * INTO newtable 不起作用的主要内容,如果未能解决你的问题,请参考以下文章

db2 select问题

select * into outfile 即使对于 root 也不起作用

将过程参数传递给 SELECT INTO where 子句不起作用

SELECT * INTO 不完整查询子句

用于导出的 INTO OUTFILE 查询在本地驱动器上不起作用

select into from 与 select into from opendatasource