发布网友 发布时间:2022-04-09 15:30
共4个回答
懂视网 时间:2022-04-09 19:51
set serveroutput on;
spool c:sequence_code.txt;
declare
v_sequence varchar2(4000);
v_nextval number(38,0);
begin
for i in (select sequence_name from user_sequences) loop
select dbms_metadata.get_ddl(‘SEQUENCE‘,i.sequence_name,user) into v_sequence from dual;
execute immediate ‘select ‘||i.sequence_name||‘.‘||‘nextval from dual‘ into v_nextval;
v_sequence := substr(v_sequence,1,instr(v_sequence,‘START WITH‘,1,1)+length(‘START WITH‘))||‘ ‘||to_char(v_nextval)||‘ ‘||
substr(v_sequence,instr(v_sequence,‘CACHE‘))||‘;‘;
dbms_output.put_line(v_sequence);
end loop;
end;
/
spool off;
导出oracle序列
标签:pool ada exec tar number user put spool arc
热心网友 时间:2022-04-09 16:59
首先确定你导出的数据是否有序列,如果没有,那么可能是你导出数据的时候没有导出:
使用工具导出,导出时没有将删除表序列选项的勾去掉;
命令导出时,强制不导出序列
追问我是用PL/SQL工具导出的,那个导出把相关的,创建序列时的sql语句,导出来,怎么搞?
热心网友 时间:2022-04-09 18:17
oracle的序列是事先定义好的,要使用的时候从定义好的序列上取值。表里面没有相关的内容。热心网友 时间:2022-04-09 19:52
要序列?
select rowid,rownum from al