1. bcp腳本如何在虛擬機上的sybase庫中導出數據
Sybase從學完PowerBuilder之後,再也沒用過。只要有路由器,虛擬機網路設置成橋接,就跟現實網路環境一樣,用客戶端直接連虛擬機網路地址。要使用NAT(Network Address Translation,網路地址轉換。一般三層交換機/路由器也有這個功能)原則上也是可以的,就是需要知道Sybase的服務埠(例如MSSQL服務埠是1433),然後把虛擬機上的這個服務埠映射到物理機上相同埠上,前提是物理機沒有使用這個埠(一般只要物理機沒裝Sybase就不會有程序佔用這個埠)。映射方法【編輯】->【虛擬網路編輯器】在虛擬網卡中選擇VMNet8,然後點擊【NAT設置...】,在彈出的窗口中添加一條映射,最後用客戶端直接連本機就行了。
2. sybase bcp 命令
SYBASE資料庫方面BCP說明:
BCP是SYBASE公司提供專門用於資料庫表一級數據備份的工具。
一般存放在所安裝的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
3. 關於在C#中運用BCP語句進行SQL sybase搜索
建議將整條bcp命令賦值給一個變數@execsql,然後exec(@execsql)
4. 'bcp' 不是內部或外部命令,也不是可運行的程序
bcp 是一個命令的,想這是你的系統有問題引起的! 據體解析如下:BCP命令參數bcp命令詳解(sybase)bcp 實用工具在 Microsoft? SQL Server? 2000 實例和數據文件之間以用戶指定的格式復制數據。語法bcp {[[database_name.][owner].]{table_name | view_name} | "query"} {in | out | queryout | format} data_file [-m max_errors] [-f format_file] [-e err_file] [-F first_row] [-L last_row] [-b batch_size] [-n] [-c] [-w] [-N] [-V (60 | 65 | 70)] [-6] [-q] [-C code_page] [-t field_term] [-r row_term] [-i input_file] [-o output_file] [-a packet_size] [-S server_name[\instance_name]] [-U login_id] [-P password] [-T] [-v] [-R] [-k] [-E] [-h "hint [,...n]"]
5. sybase中從一個資料庫中怎樣復制到另一個資料庫中 急!!
如果兩個資料庫伺服器都是sybase ASE
大致過程是
1. 在其中一個資料庫伺服器中建立另一個資料庫伺服器的遠程伺服器
2. 在遠程伺服器上創建代理表
3. 通過代理表將數據insert select到表中
6. sybase用bcp in命令給數據表導入數據,請問導入後,表中的原有數據是否會保留而不被覆蓋
我原先做過兩年的Sybase資料庫開發,bcpin命令是不會覆蓋原來的已有數據,它會疊加,也可以指定導入到表數據所在行數位置
7. sybase執行bcp時提示下面錯誤!!
貼出完整的bcp命令。
8. 有哪個高手知道sybase的bcp命令中各參數的詳細解釋跪求
在sybase資料庫中提供了一個bcp命令,利用這個命令來處理數據的備份和恢復,比軟體中提供的數據備份、恢復要快的多,因為該命令對數據的操作不產生日誌。
首先來看一看bcp的命令格式:
bcp 資料庫名+.+表名+in/out 文件名字(帶路徑)+-Usa –Ppassword -S SERVERNAME –c
解釋:資料庫名為要備份的資料庫名字
表名為要備份的表的名字
in/out 備份用out,恢復用in
文件名字:備份形成的文件或恢復需要的數據文件,要求包含文件的路徑信息
password:sa的口令
servername:如本機器連接多個資料庫伺服器,則需要指定相應的資料庫伺服器
我們可以利用sybase提供的其他SQL語句形成上述操作需要的所有文件,以cwbase1為例,sa的口令為aaaaaa,將財務數據備份到c:\sjbf\目錄下:
select 『bcp cwbase1.』+name+』 out c:\sjbf\』+name+』.txt』+』 –Usa –Paaaaaa –Sserver –c』
from sysobjects where type=』U』 and name not like '#%'
select 『bcp cwbase1.』+name+』 in c:\sjbf\』+name+』.txt』+』 –Usa –Paaaaaa –Sserver –c』
from sysobjects where type=』U』 and name not like '#%'
將上述語句執行後形成的語句形成不同的txt文件,將形成的bat文件簡單用notepad或者word打開簡單修改相應信息(如資料庫的名字、口令、server的名字),可以利用查找替換完成操作。
將上述形成的文件改為bat文件,在需要執行時,直接運行批處理文件即可。
之所以沒有形成相應的文檔,是因為各個單位的帳套中包含的系統不同,不能形成的統一的信息。
9. 在sybase中怎麼用bcp導入數據
從資料庫中把所有表數據導出:
1.編輯一個文件selectout.sql:
set nocount on
use databasename
go
select 'bcp databasename..' + name + ' out d:\temp\' + name + '.txt -Uusername -Ppassword -Sservername -c ' from sysobjects where type='U'
go
2.在cmd中執行:
isql -Uusername -Ppassword -Sservername -i d:\selectout.sql -o d:\bcpout.bat
3.執行d:\bcpout.bat文件, 可以把數據導出到d:\temp\目錄。
把所有表數據導入到資料庫時,將上面的out改為in
4.bcp導入導出:
導出數據:
bcp DatabaseName.dbo.tableName out D:\tableName.txt -SServerName -Usa -P -c -b 10000
導入數據:
bcp DatabaseName.dbo.tableName in D:\tableName.txt -SServerName -Usa -P -c -b 10000
在導入大量數據時加上-b參數,分批提交不以致於資料庫日誌被塞滿。