如何高效实现批量插入数据,并去重

如何高效实现批量插入数据,并去重,第1张

c#,sqlserver。写一下我将前端获取到的缓存数据批量插入数据库的表。

在sqlserver数据库下,展开(可编程性)-->(类型)-->(用户自定义表类型)。建一个自定义表类型,表类型结构即是前端传过来的表格数据结构。例如:

CREATE TYPE [dbo][DT_SAP_ASN] AS TABLE(

[GUID] [nvarchar](50) NULL,

[VBELN_SIP] [nvarchar](30) NULL,

[POSNR_SIP] [nvarchar](30) NULL

)

GO

然后再写个存储,用于调用此存储批量将前端传入的datatable缓存数据批量插入数据库的某个表。例如:

CREATE PROC [dbo][SP_EDI_SAP_ASN]

(

@DT_SAP_ASN DT_SAP_ASN READONLY --输入参数,刚刚自定义的表类型

)

AS

BEGIN

SET NOCOUNT OFF

INSERT INTO dboEDI_ASN_Log

( ID ,

GUID ,

VBELN_SIP ,

POSNR_SIP ,

)

SELECT NEWID() ,

GUID ,

VBELN_SIP ,

POSNR_SIP

FROM @DT_SAP_ASN

SET NOCOUNT ON

END

当然,去重的话在inset那边select表#DT_SAP_ASN distinct一下即可

具体的 *** 作步骤如下:首先,用Access打开mdb文件。导出成txt文件,由于本人的SQLite是在linux下使用,所以编码要改成Unicode,分隔符用逗号分割(逗号分割是为了后期导入到SQLite中)第二步,将文件导入到linux系统下通过终端sqlite3abcdbSQLiteversion3622Enter"help"forinstructionsEnterSQLstatementsterminatedwitha";"sqlite进入一个已经建好的数据库中sqliteCREATETABLEeee(idINTEGERPRIMARYKEY,numberNUMERIC,codeNUMERIC,cityTEXT,citytypeTEXT);创建一个表,这个表的字段和数据类型要和txt文件中的数据和数据类型相对应。sqliteseparator","//设置分割符为逗号,和之前导出设置的分隔符保持一致sqliteimportlisttxteee//将listtxt上的内容导入到表eee中到此,已成功地将批量数据插入到SQLite中了。

以上就是关于如何高效实现批量插入数据,并去重全部的内容,包括:如何高效实现批量插入数据,并去重、SQLite数据库如何批量插入数据、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9741956.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存