如何 插入数据 我想从一个表中 选择 一部分需要的数据 插入到新的表当中 不是取全部的数据 只取一部分的数据 还有 我在 PL/SQL里插入数据 提示 请问 如何 设置 缓冲去大小 是在 PL/SQL里设置 还是 在 oracle里设置
ora-06502 数字或值错误 字符串缓冲区太小谢谢 高手赐教
ora-06502 数字或值错误 字符串缓冲区太小谢谢 高手赐教
解决方案 »
- 有人在win7上安装oracle10g,并能正常使用吗?
- Oracle下一段时间里的数据
- 一个小开发但可能用到游标、存储过程、动态SQL,占位符,列名为变量,请求支持
- ORACLE建立触发器时出现WARNING:TRIGGER CREATED WITH COMPILATION ERRORS
- 关于in
- 请问oracle8i 存放表和字段信息的系统表是哪个,注释信息又都在系统表的什么字段里
- 什么情况下ORDER BY子句中只能引用SELECT后已提及的字段?
- 高分求Oracle与SQL Server的性能对比测试报告
- 能否直接将Excel中的所有内容保存到一个Oracle二进制字段(Long Raw型)中?
- (求助)在DBMS_SQL中打开游标是啥意思??
- oracle 创建的函数的返回类型
- 那里有oracle817 for linux or for unixware 下载
insert into tb1 select col1,col2...,coln from tb2
应该没有ora-06502的错误,
还有其他什么操作没?
insert into tb1(col1,col2...,coln) select col1,col2...,coln from tb2
v_sql varchar2(2000);
begin
FOR i IN 1..3 LOOP
v_sql := ' insert into dtiajb2 values select PRODUCE_DATE,
' || i || '
from dtiajb';
execute immediate v_sql;
commit;
END LOOP;
end; 以上代码 我在 PL/SQL里插入数据 提示 ora-06502 数字或值错误 字符串缓冲区太小
请问 如何 设置 缓冲区大小 是在 PL/SQL里设置 还是 在 oracle里设置
--VALUES去掉看看
declare
v_sql varchar2(2000);
begin
FOR i IN 1..3 LOOP
v_sql := ' insert into dtiajb2 select PRODUCE_DATE,
' || i || '
from dtiajb';
execute immediate v_sql;
commit;
END LOOP;
end;
还有注意一下类型,如果不是数字型的,i要转换to_char(i)
还有就是如果出现这样的错误是因为数据类型的错误,即插入的数据和表结构中要求的数据不一致
一点自己的看法
对执行的效率有影响
貌似是习惯问题