[原]select into与inset into select

学习时候,曾讲过二者区别。
select into 将选择的结果创建新表,insert into select则是将结果插入到已有表中。
如:
select * into  NewTable from ATable; --创建一个新表NewTable ,将ATable数据插入其中。
insert into OldTable select * from ATable; --将ATable中数据插入到已有表OldTable 中。

今天在sql/plus中第一句怎么也执行不下去,总是报"ORA-00905:缺失关键字"。啥原因呢?一查,原来是PL/Sql与T-SQL区别。
T-SQL中该句正常,但PL/SQL中解释是:
select..into is part of PL/SQL language which means you have to use it inside a PL/SQL block. You can not use it in a SQL statement outside of PL/SQL.
即不能单独作为一条sql语句使用,一般在程序块中给变量赋值。

如果在PL/SQL中实现该功能,可使用Create table newTable as select * from ...:
如: create table NewTable as select * from ATable;

转载于:https://www.cnblogs.com/xinyuxin912/archive/2009/07/31/1535713.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值