使用BCP向MSSQL導(dǎo)入大量數(shù)據(jù)
Bcp使用說(shuō)明:
https://docs.microsoft.com/zh-cn/sql/tools/bcp-utility?view=sql-server-2017
以L(fǎng)BS數(shù)據(jù)為例說(shuō)明:
首先創(chuàng)建數(shù)據(jù)庫(kù)表:
1. 創(chuàng)建空表[bs_460]:
-----------------------------------------------
CREATE TABLE [dbo].[bs_460](
[ID] [varchar](20) PRIMARY KEY,
[MCC] [int] NOT NULL DEFAULT(0),
[MNC] [int] NOT NULL DEFAULT(0),
[AC] [int] NOT NULL DEFAULT(0),
[CI] [bigint] NOT NULL DEFAULT(0),
[Ver] [int] NOT NULL DEFAULT(0),
[Radius] [int] NOT NULL DEFAULT(0),
[Address] [nvarchar](150) NOT NULL DEFAULT(0),
[Lat] [decimal](11, 8) NOT NULL DEFAULT(0),
[Lng] [decimal](11, 8) NOT NULL DEFAULT(0),
[REF] [int] NOT NULL DEFAULT(0),
[Roads] [nvarchar](150) NOT NULL DEFAULT(0),
[Lata] [decimal](11, 8) NOT NULL DEFAULT(0),
[Lnga] [decimal](11, 8) NOT NULL DEFAULT(0),
[Latb] [decimal](9, 6) NOT NULL DEFAULT(0),
[Lngb] [decimal](9, 6) NOT NULL DEFAULT(0),
[Latg] [decimal](9, 6) NOT NULL DEFAULT(0),
[Lngg] [decimal](9, 6) NOT NULL DEFAULT(0),
[RID] [int] NOT NULL DEFAULT(0),
[RIDS] [bigint] NOT NULL DEFAULT(0)
)
-----------------------------------------------
用 bcp導(dǎo)入 [bs_460] 庫(kù)。
在新建的記事本文件中,復(fù)制輸入下面的 bcp 代碼,并且修正核對(duì)連接參數(shù),然后另存為腳本文件 *.bat,然后右鍵“以管理員身份運(yùn)行”此腳本開(kāi)始導(dǎo)入。
-----------------------------------------------
bcp 數(shù)據(jù)庫(kù)目錄名.dbo.bs_460 in E:\*\bs_460_20170301.dat -n -U 數(shù)據(jù)庫(kù)用戶(hù)名 -S 192.168.1.* -P 數(shù)據(jù)庫(kù)密碼 -b 1000 -h "TABLOCK"
pause
-----------------------------------------------
bcp db_red_armband.dbo.bs_460 in C:\db\lbs\bs_460_20170301.dat -n -U root -S 127.0.0.1? -P szirf_2016 -b 1000 -h "TABLOCK"
pause
這里說(shuō)明下文件信息:必須是有效存在的;否則會(huì)提示如下錯(cuò)誤。
正常發(fā)送數(shù)據(jù)時(shí):

發(fā)送完畢查看數(shù)據(jù)即可,當(dāng)設(shè)置有主鍵時(shí),不可重復(fù)導(dǎo)入。
