SqlServer操作大容量数据

微软官网:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2005/ms191485%28v%3dsql.90%29

三种方法(BCP、bulk _insert 、openrowset)

大容量数据好像能支持大约21亿行数据,amazing!

例子:大容量数据:87个字段,将近54万行的数据,约240M
如果CPU和内存足够的,请使用bulk insert语句或OPENROWSET函数以便获得更好的大容量导入性能,但只允许在服务器进程内操作。
bcp实用工具是服务器进程外可以操作,能够导入或导出
使用完整恢复模式的数据库,建议您在执行大容量导入操作之前,先将数据库改为使用大容量日志恢复模式,之后应立即将数据库重设为完整恢复模式。
SSMS建议调大packet_size的值

举个栗子:

要有bulkadmin角色权限+开启大容量日志模式,在SSMS中执行:
################################
USE databaseku;
GO
BULK INSERT myTestFormatFiles
FROM 'C:UsersuziDesktop b104-1_1.txt'
WITH (DATAFILETYPE = 'char',
FIRSTROW = 2,
FIELDTERMINATOR = ',',
ROWTERMINATOR = ' ');
GO
SELECT * FROM myTestFormatFiles;
GO

###################################

进程外操作

bcp databases..table_1 in C:Users hahaDesktopG104-1_1.txt -c -t , -r -F 2 -b 10000 -U yourservername

假设是一种超能力
原文地址:https://www.cnblogs.com/Haihong72H/p/12060851.html