解决方案 »
- oracle每天特定时间自动重启
- 【pro*c/c++预编译通不过-寸步难行啊】谁能帮我预编译通过呀?
- 用一个表去更新另一个表
- 如何在function中传递not in 参数
- Oracle可以在EM登陆别的数据库吗?
- sql语句
- tomcat启动报错,ORA-22905: cannot access rows from a non-nested table item?是什么原因?
- ORA-01536 错误
- 请问,delete是否能返回结果集?
- 在包(package)中定义的function应该在系统表中有定义
- oracle 12c ORA-01017: 用户名/口令无效; 登录被拒绝
- 自学Java,学习到数据库,发现oracle sql delover连接不上服务器
create or replace procedure proc_random is
v_FilePath varchar2(200);--录制文件路径,随机6个字母
v_PartId varchar2(200);--区分字段 格式MMDD,随机4个数字
v_StaffNo varchar2(200);--业务代表号,从YTCZ060001-YTCZ060020随机生成
v_RecordTime date;--录制时间,从20170804前6个月随机生成
x number :=0;--循环
begin
--循环执行500次
while x<=50000 loop
x :=x+1;
--生成6个字母
select dbms_random.string('U', 6) into v_FilePath from dual;
--生成4个数字
select round(dbms_random.value(1000,9999)) into v_PartId from dual;
--生成业务编号
select 'YTCZ0600'||to_char(round(dbms_random.value(1,20)),'fm00') into v_StaffNo from dual;
--生成时间
select to_date(trunc(dbms_random.value(to_number(to_char(to_date('20170801','yyyymmdd'),'J')),
to_number(to_char(to_date('20170201','yyyymmdd') + 1,'J')))),
'J') into v_RecordTime/*+
(trunc(dbms_random.value(9, 17)) * 3600 +
trunc(dbms_random.value(0, 60)) * 60 +
trunc(dbms_random.value(0, 60))) / (24 * 60 * 60)*/
from dual;
-- 向t_lzinfor表插入数据
insert into t_lzinfor(seriaino,filepath,partid,staffno,recordtime)
values(t_lzinfor_seq.nextval,v_FilePath,v_PartId,v_StaffNo,v_RecordTime);
commit;
end loop;
end proc_random;
select rownum serialno,--自动增长序列
dbms_random.string('$', 6) filepath,--随机取6个字赠
trunc(dbms_random.value(4, 9999)) partid,--随机取4个数字
'YTCZ0'||trunc(dbms_random.value(60001,60020)) staffno,--从YTCZ060001...YTCZ060020中随机抽取
to_date(trunc(
dbms_random.value(
to_char(add_months(to_date('20060804','YYYYMMDD'),-6),'J'),
to_char(add_months(to_date('20060804','YYYYMMDD'),-6),'J')+
(to_date('20060804','YYYYMMDD')-add_months(to_date('20060804','YYYYMMDD'),-6))
)
),'J') --从2006年8月4日前的6个月内,随机抽取
from dual
connect by level <= 1000;
select rownum serialno,--自动增长序列
dbms_random.string('$', 6) filepath,--随机取6个字赠
trunc(dbms_random.value(4, 9999)) partid,--随机取4个数字
'YTCZ0'||trunc(dbms_random.value(60001,60020)) staffno,--从YTCZ060001...YTCZ060020中随机抽取
to_date('20060804','YYYYMMDD')-
trunc(dbms_random.value(0,
to_date('20060804','YYYYMMDD')-
add_months(to_date('20060804','YYYYMMDD'),-6))
) --从2006年8月4日前的6个月内,随机抽取
from dual
connect by level <= 1000;