你導出工具的客戶端和服務器端的數據庫版本不一致,你的客戶端為11g,而服務器則只是10g的,沒法兼容,所以導不了數據。
創(chuàng)新互聯是一家專注于成都做網站、網站建設與策劃設計,黃岡網站建設哪家好?創(chuàng)新互聯做網站,專注于網站建設10余年,網設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:黃岡等地區(qū)。黃岡做網站價格咨詢:18980820575
建議換一個客戶端(重裝客戶端的軟件,或者找一個別人的客戶端進行導,或者直接進入服務器,使用服務器機器上的oracle進行導出)
補充回答:Toad for Oracle沒有使用過,不過剛才百度了一下,有其他的版本。
EXP 用戶名/密碼 GRANTS=Y TABLES=(要導出的表1, 要導出的表2, 以此類推) file=E:\目錄\文件名.dmp
設置導出表的rows字段值為n(不導出)就可以了。
命令行執(zhí)行:
exp username/passwd@dbname tables= tablename file=filename.dmp rows=n
備注:rows默認為y,也就是說默認是導出數據的,如果想同時導出數據,那么不加這個字段就可以了。
關于dmp文件我們用的還是比較多的,dmp文件它是作為oracle導入和導出表使用的文件格式,今天就將dmp文件導出和導入進行學習。
dmp文件導出
dmp文件導出用的比較多的一般是三種,他們分別是:導出整個數據庫實例下的所有數據、導出指定用戶的所有表、導出指定表。
這里已我的數據庫為例,進行介紹,我的Oracle數據庫實例為"ORACLE",查看自己數據庫實例可以從"任務管理器--服務"中進行查看,如下圖
打開命令行:
1,將數據庫ORACLE完全導出,用戶名system密碼manager 導出到c:\daochu.dmp中
exp system/manager@ORACLE??file=c:\daochu.dmp full=y
2,將數據庫中RFD用戶與,JYZGCX用戶的表導出
exp system/manager@ORACLE??file=d:\daochu.dmpowner=(RFD,JYZGCX)
3,將數據庫中的表T_USER、T_ROLE導出
expJYZGCX/JYZGCX@ORACLEfile= ?d:\data\newsmgnt.dmp tables=(T_USER,T_ROLE)
上面的system為用戶名,manager為密碼,ORACLE為數據庫實例名,其實不一定非的用system用戶,只要是擁有管理員權限的用戶都可以。
dmp文件導入
1,打開“開始”--輸入cmd— sqlplus /nolog;
2,輸入 conn / as sysdba管理員賬戶登錄;
3,需要創(chuàng)建表空間,如果我們知道需要導入的數據庫的表空間直接創(chuàng)建就可以,如果不不知道,也沒有關系,我們可以用txt打開dmp文件,使用快捷鍵ctrl+F,查找tablespace,就可以找到這個dmp文件所對應數據庫的表空間,然后創(chuàng)建我們找到的表空間就可以;
步,不創(chuàng)建的表空間,創(chuàng)建用戶,并分配權限;
5,打開“開始”--輸入cmd(注意:這里是cmd窗口,不是sqlplus窗口!??!),輸入以下語句:“imp ?kang/123456@localhost/ORACLEfile="C:\daochu.dmp"full=y?ignore=y”
上述語句說明如下:
kang是創(chuàng)建的登錄數據庫用戶名;
123456是登錄數據庫的密碼;
localhost:代表當前數據庫的地址是本機,如果是遠程導入,替換成對應的ip地址就行
ORACLE:是實例名稱)
file:后面的是你當前dmp文件存放的路徑
full=y,這個貌似是全部
ignore=y,忽略一些錯誤
備注:關于數據庫實例、表空間、用戶等基本概念和創(chuàng)建的語句可參考前面的文章“Oracle學習——掃盲篇”
小結
本篇文章主要講述了,oracle數據導出和導入的具體步驟,其中導入dmp文件的時候即便不知道表空間、用戶名和密碼也可以進行導入。
PL/SQL選中表右鍵view,點選column標簽,全選后右鍵復制,然后粘帖到excel里就行了。
-- 查詢某表的數據字典
SELECT A.TABLE_NAME AS 表名,A.COLUMN_NAME AS 字段名,
DECODE(A.CHAR_LENGTH,0,DECODE(A.DATA_SCALE,NULL,A.DATA_TYPE,A.DATA_TYPE||'('||A.DATA_PRECISION||','||A.DATA_SCALE||')'),
A.DATA_TYPE||'('||A.CHAR_LENGTH||')') as 字段類型1,A.DATA_TYPE AS 字段類型,A.DATA_PRECISION AS 有效位,A.DATA_SCALE AS 精度值,
A.CHAR_LENGTH AS 字段長度,A.NULLABLE AS 能否為空
FROM sys.user_tab_columns A where A.table_name = 'TAM_ADDRESS'
-- 具有dba權限用戶導出數據字典
SELECT A.TABLE_NAME AS 表名,A.COLUMN_NAME AS 字段名,
DECODE(A.CHAR_LENGTH,0,DECODE(A.DATA_SCALE,NULL,A.DATA_TYPE,A.DATA_TYPE||'('||A.DATA_PRECISION||','||A.DATA_SCALE||')'),
A.DATA_TYPE||'('||A.CHAR_LENGTH||')') as 字段類型,A.DATA_DEFAULT AS 默認值,
A.NULLABLE AS 能否為空,B.comments AS 備注
FROM sys.all_tab_columns A,sys.DBA_COL_COMMENTS B
WHERE A.owner=B.owner AND A.table_name=B.table_name AND A.COLUMN_NAME=B.COLUMN_NAME AND A.owner='guoqiang' AND
A.TABLE_NAME IN (
'TB_SUBJECT', 'TB_SUBJECT_BALANCE', 'TB_VOUCHER', 'TB_VOUCHER_DETAILS',
'TB_CUSTOMER', 'TB_VOUCHER_CLASSIFY_MODE', 'TB_VOUCHER_TYPE', 'TB_ASSET',
'TB_ASSET_CATALOG', 'TB_M_DM_ASSETS_LIABI_RPT', 'TB_M_DM_PROFIT_RPT',
'TB_M_DM_REVENUE_RPT', 'TB_M_DM_COST_RPT')ORDER BY A.TABLE_NAME
SELECT A.TABLE_NAME AS 表名,A.COLUMN_NAME AS 字段名,
DECODE(A.CHAR_LENGTH,0,DECODE(A.DATA_SCALE,NULL,A.DATA_TYPE,A.DATA_TYPE||'('||A.DATA_PRECISION||','||A.DATA_SCALE||')'),
A.DATA_TYPE||'('||A.CHAR_LENGTH||')') as 字段類型,A.DATA_DEFAULT AS 默認值,
A.NULLABLE AS 能否為空,B.comments AS 備注
FROM sys.user_tab_columns A,sys.user_col_comments B
WHERE A.table_name=B.table_name AND A.COLUMN_NAME=B.COLUMN_NAME AND
A.TABLE_NAME IN (
'TB_SUBJECT', 'TB_SUBJECT_BALANCE', 'TB_VOUCHER', 'TB_VOUCHER_DETAILS',
'TB_CUSTOMER', 'TB_VOUCHER_CLASSIFY_MODE', 'TB_VOUCHER_TYPE', 'TB_ASSET',