为什么会出现missing vlaues keyword? 在最高权限下,表A和表B的表结构完全一样,表B中大概有10万条数据,而表A中有500万条数据,现在想把表B中的数据全部复制到表A中,执行语句insert into A select * from B,提示missing values( )keyword,请教高手,这是怎么回事? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是不是B表中有的数据列的值为NULL啊,查看一下吧。根据提示,应该是插入时,提供的值列数不对应。 用SELECT INTO吧。select * into A from B; create table b as select * from a 首先检查下SQL语法的准确性,如下SQL也会出现错误:insert into tab1) select * from tab2 ;生成SQL_TRACE文件再做分析:alter session set sql_trace=true;insert into A select * from B select * into 会创建新表的 。别瞎写 不好意思,没看清题目,select into 是创建新表,在备份查询的数据。插入不能,看你的报错信息可能是表A和表B的主键不一致;或者是同一字段,在B中有空值,而在A中是不能为空的。 oracle 过程语法的疑问 pl/sql工具中如何视图的源码啊 oracle中修改数据文件大小时发生SQL未正确结束 求救!Oracle中的图片存储 如何通过SQL语句一次Create多个触发器? 想从sqlserver转到oracle,对sql server比较熟练,该看些什么书呢? 问一个关于 pl/sql 的 procedure 问题 orcale的数据导出 如何对oracle中select并order出的数据集自动加入1、2、……序号? 求一个分组统计的SQL语句 求助导出问题 PL SQL最佳入门教程
根据提示,应该是插入时,提供的值列数不对应。
insert into tab1) select * from tab2 ;生成SQL_TRACE文件再做分析:
alter session set sql_trace=true;
insert into A select * from B
不好意思,没看清题目,select into 是创建新表,在备份查询的数据。插入不能,看你的报错信息可能是表A和表B的主键不一致;或者是同一字段,在B中有空值,而在A中是不能为空的。