Student(student_id, first_name, last_name,GPA,dept_name)
Enrolment(student_id, course_id, grade)
Course(course_id, title,dept_name)
Change_log(student_id, course_id, old, new,date)
编写一个PL/SQL程序, 随机地向student表中插入10000条记录
哪位高手帮帮忙呀~~~不胜感激(*^__^*)。
Enrolment(student_id, course_id, grade)
Course(course_id, title,dept_name)
Change_log(student_id, course_id, old, new,date)
编写一个PL/SQL程序, 随机地向student表中插入10000条记录
哪位高手帮帮忙呀~~~不胜感激(*^__^*)。
但要造出比较真实的就难了
我上个月刚造了一个500万条记录的表
建了一个常用字字库表,分析了数百万个姓名分析常用字在姓和名中出现的频率
给自己出难题而已,只是要测试数据的话不用这么麻烦,嘿嘿``
create or replace procedure proc_test_insert
as
var_send_id number;
BEGIN
for i in 1..10000 loop
insert into Student(student_id, first_name, last_name,GPA,dept_name)
values(i,'FNAME'||to_char(i),'LNAME'||to_char(i),'GPA'||to_char(i),'DNAME'||to_char(i));
end loop;
commit;
end proc_test_insert;/
我上次造了4000万数据测分区表,后来直接drop掉表没加那个清数据的参数,现在硬盘6G空间还在那占着呢,。。又不敢直接delete掉那文件,不知道怎么办
create or replace procedure p_student_add
is
begin insert into Student(student_id, first_name, last_name,GPA,dept_name)
select ceil(dbms_random.value(1,1000000)),
dbms_random.string('w',4),
dbms_random.string('x',4),
dbms_random.string('x',4),
dbms_random.string('i',4)
from dual
connect by rownum <= 10000;
commit;end;
is
begin insert into Student(student_id, first_name, last_name,GPA,dept_name)
select ceil(dbms_random.value(1,1000000)),
dbms_random.string('w',4),
dbms_random.string('x',4),
dbms_random.string('x',4),
dbms_random.string('i',4)
from dual
connect by rownum <= 10000;
commit; end; 拿这个可以随便改了,
你是这个意思不?[TEST@ora10gr1#2009-12-18/08:13:29] SQL>drop table t3;Table dropped.[TEST@ora10gr1#2009-12-18/08:13:37] SQL>drop table TEST_OLAP;Table dropped.[TEST@ora10gr1#2009-12-18/08:13:45] SQL>show recyclebin
ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME
---------------- ------------------------------ ------------ -------------------
T3 BIN$IBXdFUBvQtqqhwN5gf4NjQ==$0 TABLE 2009-12-18:08:13:37
TEST_OLAP BIN$2/CexDufRzW6HUfyMDSIQg==$0 TABLE 2009-12-18:08:13:45
[TEST@ora10gr1#2009-12-18/08:13:48] SQL>purge table t3;Table purged.[TEST@ora10gr1#2009-12-18/08:13:55] SQL>show recyclebin
ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME
---------------- ------------------------------ ------------ -------------------
TEST_OLAP BIN$2/CexDufRzW6HUfyMDSIQg==$0 TABLE 2009-12-18:08:13:45
如果想生存随机字符串,长度为11的,以某些字串打头的,怎么写??
我这样写了不行呢,谢谢了
select dbms_random.string('1KA',11)from dual;
(student_id, first_name, last_name,GPA, dept_name)
SELECT dbms_random.random,--在这个函数基础上你可以随便改
dbms_random.random,--在这个函数基础上你可以随便改
dbms_random.random,--在这个函数基础上你可以随便改
dbms_random.random,--在这个函数基础上你可以随便改
dbms_random.random)--在这个函数基础上你可以随便改
CONNECT BY LEVEL < 100001;
因为不知道各个字段的类型,都这样写了 ,你可以通过to_char 或者再加上“||”这样来自己造!
如果想生存随机字符串,长度为11的,以某些字串打头的,怎么写??
我这样写了不行呢,谢谢了
select dbms_random.string('1KA',11)from dual;上述问题是这样的:dbms_random.string('1KA',11)的第一参数是字符类型的,不能是字符串。你想以某个字母开头,可以这样的:
select '1KA'||dbms_random.string('m',11)from dual;
这样的话所有的都是以'1KA'开头的了!