我想使用.net将超过25000行数据批量插入(或更新,如果存在更新)到SQL Server数据库中。哪种方法最适合我?
例如:
如果我将数据发送到数据库,它应该插入/更新这些记录。
答案 0 :(得分:2)
我认为你需要SqlBulkCopy类。
bulkCopy.WriteToServer(dataTable);//Store your data into dataTable
答案 1 :(得分:0)
您可以使用XML更新方法。以XML格式将数据传递到数据库`
CREATE procedure [dbo].[BulkInsertion]
@xmlData NTEXT,
@Type INT
AS
BEGIN
DECLARE @idoc INT
EXEC SP_XML_PREPAREDOCUMENT @idoc OUTPUT, @xmlData
IF @Type=1
BEGIN
INSERT INTO TableName
Column1, Column2, Column3
)
SELECT Column1, Column2, Column3
)
END AS DOLP
FROM OPENXML (@idoc, '//Table1', 3)
WITH (Column1 INT, Column2 VARCHAR(250), Column3 VARCHAR(250))
END
EXEC SP_XML_REMOVEDOCUMENT @idoc
END'