成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用bcp進行大數據量導出導入

數據庫
BCP是SYBASE公司提供專門用于數據庫表一級數據備份的工具,本文中將為大家介紹BCP的另外一種功能,即使用bcp進行大數據量導出導入。

導讀:數據的導入導出,相信很多人都非常熟悉,可是當涉及到大量數據的導入導出時,就會出現很多的問題,下面就為大家講解一種能夠實現大量數據導入導出的方法,就是使用BCP的方案。

SQL Server的導出導入方式有:

1、在SQL Server中提供了導入導出的界面操作。
2、在界面操作中又分【復制一個或多個表或視圖的數據】和【編寫查詢以指定要傳輸的數據】兩種模式,第一種是直接對表、視圖進行全部字段、記錄進行導出,而第二種就是可以通過SQL語句來控制導出導入的字段和行。
3、使用簡單但有用的SQL腳本 中的【表復制】這里面的方法。

4、再一種就是在命令行中使用bcp命令來導入導出數據,需要特別說明的是,這是對大數據量導入導出就好的辦法。下面是我實踐出來可以使用的腳本,但是我在使用bcp的時候遇到了一些問題,希望大家給于幫助。謝謝。(PS:問題在下面代碼中)使用xp_cmdshell的時候可能會有些問題,可以參考:MSsql2005 如何啟用xp_cmdshell <!--[endif]-->
還沒有解決的問題
1:使用BCP命令時如果導出的字段為空想替換為其它描述(比如替換成NULL)如何辦?
2:使用 case when 時就會出現1023字節的問題,那有沒其它辦法解決呢?
3:使用BCP命令導出大數據量時出現錯誤:查詢提示超過了最大目錄緩沖區 1023 字節(2164 字節輸入)。
備注
1:已經使用了Coalesce代替case when,但是還是超出字符數了。
2:對以網上說的放到Temp數據庫中、中間表,這些?但是數據表幾十G了,還能這樣?

整個表導出(out)
bcp 數據庫名.dbo.表名 out c:\currency.txt -S"數據庫實例" -U"用戶" -P"密碼" -c

使用SQL語句導出(queryout)
bcp "select * from 數據庫名.dbo.表名" queryout c:\currency.txt -S 數據庫實例 -U"用戶" -P"密碼" -c

設置字段分隔符和行分隔符(-c -t"," -r"\n"),不想輸入字段類型等請配合-c一起使用
bcp "select * from 數據庫名.dbo.表名" queryout c:\currency.txt -S 數據庫實例 -U"用戶" -P"密碼" -c -t"," -r"\n"

指定每批導入數據的行數、指定服務器發出或接收的每個網絡數據包的字節數(-k -b5000 -a65535)
bcp "select * from 數據庫名.dbo.表名" queryout c:\currency.txt -S 數據庫實例 -U"用戶" -P"密碼" -c -t"," -r"\n" -k -b5000 -a65535

在查詢分析器上執行(EXEC master..xp_cmdshell)
EXEC master..xp_cmdshell 'bcp "select * from 數據庫名.dbo.表名" queryout c:\currency.txt -S 數據庫實例 -U"用戶" -P"密碼" -c'

把SQL語句生成一個.sql文件,然后調用
注:路徑的文件夾名稱中間不能有空格
exec master..xp_cmdshell 'osql -S 數據庫實例 -U 用戶 -P 密碼 -i C:\cmdshellTest.sql'

將數據導入到currency表中
EXEC master..xp_cmdshell 'bcp 數據庫名.dbo.表名 in c:\currency.txt -c -T'
導入數據也同樣可以使用-F和-L選項來選擇導入數據的記錄行。
EXEC master..xp_cmdshell 'bcp 數據庫名.dbo.表名 in c:\currency.txt -c -F 10 -L 13 -T'
在使用命令xp_cmdshell的時候需要設置權限:

/*MSsql2005 如何啟用xp_cmdshell
默認情況下,sql server2005安裝完后,xp_cmdshell是禁用的(可能是安全考慮),如果要使用它,可按以下步驟
*/
允許配置高級選項
EXEC sp_configure 'show advanced options', 1
GO
重新配置
RECONFIGURE
GO
啟用xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 1
GO
重新配置
RECONFIGURE
GO

執行想要的xp_cmdshell語句
Exec xp_cmdshell 'query user'
GO

允許配置高級選項
EXEC sp_configure 'show advanced options', 1
GO
 重新配置
RECONFIGURE
GO
禁用xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 0
GO
重新配置
RECONFIGURE
GO
或者使用圖形界面:

 


應用上文中介紹的方法就能夠輕松實現使用bcp進行大數據量導出導入,希望大家通過上文的學習,都能夠很熟練的掌握這個技巧,相信這在您以后工作中遇到類似問題時會非常有幫助的。

【編輯推薦】

  1. 數據庫之間進行數據導入導出
  2. Oracle數據導入導出實例探討
  3. 靠BCP恢復SQL Server 2000數據庫
  4. MySQL數據導入導出方法與工具介紹
責任編輯:迎迎 來源: 博客園
相關推薦

2024-07-30 15:56:42

2009-12-08 09:21:13

WCF數據量

2009-12-08 15:19:58

WCF大數據量

2021-01-07 07:46:34

MyBatis 數據量JDBC

2017-11-22 15:33:56

MySQL快速插入語句優化

2010-07-29 13:30:54

Hibari

2018-09-06 16:46:33

數據庫MySQL分頁查詢

2010-12-01 09:18:19

數據庫優化

2011-03-17 13:23:08

數據導入導出

2010-05-05 10:30:46

MongoDBNoSQL

2011-08-16 09:21:30

MySQL大數據量快速語句優化

2012-12-26 09:23:56

數據庫優化

2018-05-15 08:44:44

TensorFlowKeras內存

2014-02-24 09:48:05

大數據

2010-06-28 15:12:11

SQL Server數

2025-03-26 00:35:00

Javaweb開發

2015-03-09 10:40:44

MySQL大量數據插入

2022-08-31 15:35:34

數據高效

2010-03-29 16:16:59

Oracle exp備

2024-01-29 08:45:38

MySQL大數據分頁
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区三区在线 | 欧美日韩中文字幕在线播放 | 久久久国产精品一区 | 国产精品久久亚洲7777 | 中文字幕丁香5月 | 黄色av观看 | 都市激情亚洲 | 国产在线视频一区二区 | 国产成人jvid在线播放 | 91精品国产综合久久久久 | 国产精品黄色 | 一区二区三区免费 | 亚洲成人精品 | 美女黄色在线观看 | 91精品国产综合久久久久蜜臀 | 91精品国产乱码麻豆白嫩 | 天天综合网永久 | 黄片毛片免费看 | 天天综合永久 | 色女人天堂 | 老头搡老女人毛片视频在线看 | 欧美三级久久久 | 日韩高清黄色 | 亚洲午夜在线 | 精品综合 | 三级黄色片在线观看 | 青青久草 | 午夜久久久 | h视频在线免费 | 亚洲精品在线观看视频 | 精品国产成人 | 亚洲国产aⅴ成人精品无吗 亚洲精品久久久一区二区三区 | 成人高清网站 | 日韩国产精品一区二区三区 | 国产一区不卡在线观看 | 在线日韩精品视频 | 久草.com| 中文在线亚洲 | 亚洲综合在线播放 | 日本韩国欧美在线观看 | 狠狠视频 |