序列(sequence)是資料庫不可分割的一部分,可是,oracle中,好像不能指定匯出sequence的?
可以在備份中順帶匯出,然後還原中順帶匯入這個序列號,但只操作序列號是不行的。而且備份還原也太重量級了一點。
匯出sequence是不可能匯出的,這輩子都不可能匯出的,但可以換個思路,生成sql語句來間接匯出就可以維持得了職業生涯這樣子。
網上抄來,將cachesize去掉了,因為發覺會有0值,不知啥原因:
--chr(10) 回車符
--chr(13) 換行符
select
'drop sequence hydg.'
|| sequence_name ||
';'||chr(13)
||'create sequence hydg.'
|| sequence_name ||
' minvalue '
||min_value||
' maxvalue '
||max_value||
'
start with '
||last_number||
' increment by '
||increment_by||
';'as
sqlfrom dba_sequences where sequence_owner=
'hydg'
;
注意sequence_owner的值為大寫。
在源資料庫執行此語句,即可得到該錶空間下所有的sequence生成語句矣。複製之,到目標資料庫裡貼上之,執行之,大業可成。
MySQL模擬Oracle序列sequence
沒發現,這麼多同學有這個需求,把文件補充一下,其實就是建立1個表,和2個儲存過程。利用表的行級鎖模擬每乙個表的序列增減。drop table if exists sys sequence create table sys sequence seq name varchar 50 not null,c...
ORACLE匯出序列
最近遇到oracle匯出序列時有問題 即序列的當前值和資料庫中一些表的id最大值不一致,我們的資料庫表的主鍵是從序列中取的 需要重新匯入序列,發現exp不能單獨匯出序列,由於資料量龐大,所以又不想再導一遍資料。在網上搜尋了一下找到乙個比較好的辦法 第一步 在原資料庫上執行如下語句 select cr...
oracle單獨匯出序列
如果想單獨匯出序列,而序列又很多,可這麼做 1。用一條查詢語句查出結果 select create sequence username.sequence name minvalue min value maxvalue max value start with last number increme...