从页面得到一个范围值,如1-100,需要向数据库插入000001-000100,并且不能有重复值,比如页面输入2-20,数据库里不能有000002-000020这样的编号. 用的是oracle数据库. 来高人求救,最好详细些.谢谢谢谢啦.
解决方案 »
- 从sybase 数据库表中抓取数据放到Oracle 数据库表中 问题……
- 寻求几本有关oracle8i备份和恢复的专题书籍
- 简单的存储过程中使用参数或变量的问题
- 建job时报错:在要求输入数字处找到非数字字符
- 如何跨两个Oracle数据库查询有相同结构的表
- 关于oracle9iAS discoverer的配置问题!!!!老板今天就要我把它配好,要不然我死定了!!!!
- 请教高手们一个约束问题
- 如何设置默认自增字段?
- 新建的数据库在登陆到控制台时,独立启动就能看到数据库,登陆到Oracle Management Server时就不能看到数据库,??
- 有没有一种函数可以根据输入值判断后添加一段在where后面的代码?
- regexp_like使用方法求解
- Eclipse6.5中tomcat启动问题
select lpad(substr('1-100',1,instr('1-100','-')-1),6,0)||'-'||lpad(substr('1-100',instr('1-100','-')+1,length('1-100')),6,0)
from dual
如果没有建唯一索引,就merge into
create or replace procedure sp_test
(
iMin int,
iMax int
) as
i int;
strFormat char(6);
begin
for i in iMin..iMax loop
begin
select to_char(i,'FM000000') into strFormat from dual;
insert into ... --此处自己补充
exception
when indx_test then --indx_test即建在此字段上的唯一索引名
null;
end;
end loop;
end;
INSERT INTO TEST5(COL1)
SELECT COL2
FROM (SELECT LPAD(2 + ROWNUM - 1, 6, '0') AS COL2
FROM DUAL
CONNECT BY ROWNUM < 20 - 2 + 1) T1
WHERE COL2 NOT IN (SELECT COL1 FROM TEST5)