Sybase 數據庫BCP命令導入導出數據

[b]BCP是SYBASE公司提供專門用於數據庫表一級數據備份的工具。 [/b]
首先來個我自己使用過的命令:

導出數據:
[b]bcp cnmsdb..tmp_ResPointCircuit out ./xuwb.dat -Ucnms -Pseenms -SSYBASE_TEST -c[/b]

導入數據:
[b]bcp cnmsdb..tmp_ResPointCircuit in ./xuwb.dat -Ucnms -Pseenms -SZOOM193 -c[/b]

另外可以帶參數:[b]-t'||' -r'&&\n'[/b]

另外補充一個,Sybase下如何查看數據庫名:

select db_name()



下面是轉載滴內容:


  一般存放在所安裝的ASE或者Open Client 的BIN目錄中。
  12版本以前的ASE,bcp存放目錄爲 $SYBASE/bin
  12版本(含12版本)以後存放目錄爲 $SYBASE/OCS-12_x/bin
  其中$SYBASE爲SYBASE安裝目錄,12_x代表12.0、12.5版本,顯示爲12_0或者12_5
  
  可執行文件名稱爲bcp.EXE
  參數列表如下:(可用 bcp – 得到)
  usage: bcp [[database_name.]owner.]table_name[:slice_number] {in | out} datafile
  
   [-m maxerrors] [-f formatfile] [-e errfile]
   [-F firstrow] [-L lastrow] [-b batchsize]
   [-n] [-c] [-t field_terminator] [-r row_terminator]
   [-U username] [-P password] [-I interfaces_file] [-S server]
   [-a display_charset] [-q datafile_charset] [-z language] [-v]
   [-A packet size] [-J client character set]
   [-T text or image size] [-E] [-g id_start_value] [-N] [-X]
   [-M LabelName LabelValue] [-labeled]
   [-K keytab_file] [-R remote_server_principal]
   [-V [security_options]] [-Z security_mechanism] [-Q]
  
  常用數據備份格式爲:
  bcp dbname..tablename out c:\temp\filename -Usa -Ppassword –Sservername –c
  即可。
  其中 –U後爲SYBASE登錄名稱,–P後爲SYBASE登錄口令,–S後爲SYBASE服務名稱,–c代表使用可見文本方式導出數據
  如果爲數據恢復只需要將out 替換爲 in 即可。
  
  可用如下方法生成一個可以一次導出一個數據庫中所有表的數據的執行腳本。
  編輯一個如下文本文件 文件名稱例爲 bcpscript:
  use dbname 選中將要導出數據的數據庫
  go
  select 'bcp dbname..' + name + ' out c:\temp\' + name + ' -Usa -P -Ssybcdsrv -c' from sysobjects where type = 'U' 在sysobjects系統表中type爲U的表爲用戶表,系統表爲S。
  go
  
  用如下格式執行:
  isql –Usa –Ppassword –Sservername –i bcpscript –o bcpout.bat
  i參數後爲輸入文件,o參數後文件爲輸入文件執行後得到的輸出文件。
  執行後可以得到一個後綴名爲 BAT 的批處理文件(在unix下則生成一個shell文件並更改相應的執行權限),可直接執行。即在指定的目錄下導出了相應的數據文件。一個表的數據爲一個文件。如在UNIX下則可不用BAT後綴。
  
  備份得到的數據文件如果需要重新往數據庫中恢復,只需要將上面操作步驟中BCP命令中的out 參數換爲in參數即可。
  注意:在對正式數據做操作前最好先作一些測試。
  另外,如果牽涉到使用bcp進行字符集的更改,可以採用 –J charset 參數進行
  關於BCP等工具的具體使用指南,請參見SYBASE相關文檔。
  
  針對系統移植所需做的工作,應該有如下幾個步驟:
  1. 安裝新環境的硬件環境,包括網絡,硬盤狀況;
  2. 安裝新環境的操作系統,包括Service Pack;
  3. 安裝相同版本的SYBASE數據庫產品,包括補丁;
  4. 添加數據庫用戶,設備等相關信息,應與老系統中一致
  5. 創建新系統數據庫;
  6. 利用你所擁有的表腳本或者通過SYBASE CENTRAL中的生成DDL功能,將老系統中的建表腳本導出,生成數據庫中的表.最好將建表腳本與建立表上約束(主鍵,外鍵等)的腳本分開,先在表上不建約束,在數據導入後,再加上.;
  7. BCP OUT 老系統中數據,根據上面提到的方法;
  8. 運行建立其他對象的腳本,包括索引,主鍵,外鍵及存儲過程,觸發器,缺省等;
  9. 在新系統中對需要更改的表結構做更改,或者添加新表;
  10. 測試應用系統是否工作正常.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章