SQL服务器table设计并使用SqlBulkCopy插入数据
SQL Server table design and using SqlBulkCopy to insert data
我只需要关于充分利用 SqlBulkCopy
的建议。
假设我有一个 table 如下所示
Type BidNumber HQregion Services PrimaryExec Value
--------------------------------------------------
22 USA Some None 33
24 Europe None Delta 44
SL 22 USA Some Tango 39
GV 44 Mexico Delta Charlie 33
Time 22 India Charlie None 33
可以说大约有 100k 个条目,Type
列 100k,SL
有一些与空相同的数据点,但有些不同,我正在使用 SqlBulkCopy
从中复制数据Excel 个文件放入此 table。
我想知道是否应该将 table 分成多个 table,它们具有完全相同的列,但根据类型进行区分,所以一个 table 表示 [=21] =],另一个用于 SLData
和 GVData
,然后使用 SqlBulkCopy
将数据插入特定的 table。当只有一列数据不同时,多个 tables 的设计是否糟糕,并且在使用大容量复制时是否有效,因为我必须在插入之前删除数据并且这是一个夜间过程。
所以最终的结构是:
主要Table
BidNumber HQregion Services PrimaryExec Value
SL Table
BidNumber HQregion Services PrimaryExec Value
GV Table
BidNumber HQregion Services PrimaryExec Value
时间Table
BidNumber HQregion Services PrimaryExec Value
谢谢
你把事情想得太复杂了。 100k 对于 sql 批量复制来说太小了。像小的。这是我希望在一秒钟左右上传的大小。
如果您出于将来增加大小的原因想要划分 excels,我建议您保持 excel 原样并将完整数据批量复制到暂存 table,然后将特定过滤后的数据组播到对应的tables.
我只需要关于充分利用 SqlBulkCopy
的建议。
假设我有一个 table 如下所示
Type BidNumber HQregion Services PrimaryExec Value
--------------------------------------------------
22 USA Some None 33
24 Europe None Delta 44
SL 22 USA Some Tango 39
GV 44 Mexico Delta Charlie 33
Time 22 India Charlie None 33
可以说大约有 100k 个条目,Type
列 100k,SL
有一些与空相同的数据点,但有些不同,我正在使用 SqlBulkCopy
从中复制数据Excel 个文件放入此 table。
我想知道是否应该将 table 分成多个 table,它们具有完全相同的列,但根据类型进行区分,所以一个 table 表示 [=21] =],另一个用于 SLData
和 GVData
,然后使用 SqlBulkCopy
将数据插入特定的 table。当只有一列数据不同时,多个 tables 的设计是否糟糕,并且在使用大容量复制时是否有效,因为我必须在插入之前删除数据并且这是一个夜间过程。
所以最终的结构是:
主要Table
BidNumber HQregion Services PrimaryExec Value
SL Table
BidNumber HQregion Services PrimaryExec Value
GV Table
BidNumber HQregion Services PrimaryExec Value
时间Table
BidNumber HQregion Services PrimaryExec Value
谢谢
你把事情想得太复杂了。 100k 对于 sql 批量复制来说太小了。像小的。这是我希望在一秒钟左右上传的大小。
如果您出于将来增加大小的原因想要划分 excels,我建议您保持 excel 原样并将完整数据批量复制到暂存 table,然后将特定过滤后的数据组播到对应的tables.