问题标签 [bulkinsert]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1822 浏览

sql-server - 我将使用什么 bcp 格式文件来插入 59 列?

第一次观察,这个BCP格式文件的限制数据文件:(最多连续三行)

格式文件:

表结构

当我尝试添加另一行时,它会给出此错误消息,

消息 4832,级别 16,状态 1,第 1 行批量加载:在数据文件中遇到意外的文件结尾。消息 7399,级别 16,状态 1,第 1 行链接服务器“(null)”的 OLE DB 提供程序“BULK”报告了错误。提供商没有提供有关该错误的任何信息。消息 7330,级别 16,状态 2,第 1 行无法从链接服务器“(null)”的 OLE DB 提供程序“BULK”获取行。

如果我这样排列数据,它会给出一条错误消息,Msg 8152、Level 16、State 14、Line 1 字符串或二进制数据将被截断。该语句已终止。

这种排列(三个连续的线)给出了一个错误,

这种排列(一行)不会出错,它将插入所有6行,

第二个观察,这种数据排列适用于特定的格式文件

数据文件及其排列:

...它插入三行

...它只插入一行

使用这种格式文件:

表结构保持不变,

现在,我的问题是,我将使用什么格式文件来正确插入所有 59 列中的所有数据?

我的实际数据(部分):

...数据是连续的,仅在双分号后用空格分隔。

这是我的实际格式文件:

这是我的实际表结构:

... 提前致谢。

0 投票
1 回答
142 浏览

sql-server-2005 - 可以使用sql表生成哈希吗?[sqlserver2005]

我想要一张表,生成它的哈希字符串,存储它,然后在以后的预定义时间比较它,看看它是否匹配,如果不匹配,请记下修改时间并将其与新的更改日期一起存储。

这是因为我相信如果提交了一批超过 5000 条插入语句,插入触发器会导致严重的减速。我每天移动大量数据,除了具有默认获取日期的 smalldatetime 列之外,我有某些表我无权更改其架构,因此我无法确定最后一次更改日期。

0 投票
8 回答
28227 浏览

sql - 批量插入、SQL Server 2000、unix 换行符

我正在尝试将 .csv 文件插入到带有 unix 换行符的数据库中。我正在运行的命令是:

如果我将文件转换为 Windows 格式,加载工作,但如果可以避免,我不想做这个额外的步骤。有任何想法吗?

0 投票
2 回答
13341 浏览

c# - NHibernate 批量插入或更新

嗨,我正在做一个项目,我们需要每天处理几个 xml 文件并使用这些文件中包含的信息填充数据库。

每个文件大约 1Mb,包含大约 1000 条记录;我们通常需要处理 12 到 25 个这些文件。我已经看到了一些关于使用 NHibernate 进行批量插入的信息,但我们的问题有点棘手,因为 xml 文件包含混合了更新记录的新记录。

在 xml 中有一个标志告诉我们特定记录是新记录还是对现有记录的更新,但不告诉我们哪些信息发生了变化。xml 记录不包含我们的数据库标识符,但我们可以使用 xml 记录中的标识符来唯一地定位我们数据库中的记录。

到目前为止,我们的策略是确定当前记录是插入还是更新,并基于此我们在数据库上执行插入或进行搜索,然后使用来自xml 记录,最后我们对数据库进行更新。

我们当前方法的问题是我们遇到了数据库锁问题,并且我们的性能下降得非常快。我们已经考虑过一些替代方案,例如为不同的操作设置单独的表,甚至是单独的数据库,但这样做意味着付出很大的努力,所以在做出任何决定之前,我想征求社区对此事的意见,在此先感谢。

0 投票
2 回答
450 浏览

sql-server - 如何使用二进制编写器为 Money 数据类型编写正确的 MS SQL 原生格式?

如何使用二进制编写器为 Money 数据类型编写正确的 MS SQL 原生格式?

我想在 .net 中取一个值,从文件中读取为十进制数的字符串表示形式(实际上是从 SQL 导出的“Money”数据类型,但这并不重要)。

如何使用二进制写入器写入值,以便您可以在本机格式模式下使用 BCP 或 BULK INSERT 成功读取值?

0 投票
2 回答
5651 浏览

asp.net - 在 ASP.NET Gridview 中批量插入/更新的推荐方法是什么?

您将使用什么最佳实践或策略在启用分页的 asp.net gridview 控件中启用批量插入/更新?

例如,假设您有大约 10000 条记录,并且在页面加载时会填充此数据,这会以每个 Web 服务请求的 100 条记录块的形式发生。

要启用对这些行的编辑,您将采用哪种方法。

仅举一个例子,假设虚拟场景的对象模型如下所示。

列出客户;// 客户列表

客户 = ServiceFacade.GetAllCustomers(pageSize, currentPage);

假设上述服务调用根据每页显示 10 条记录的 pageSize 带回 50 条记录。

这将绑定到 gridView,如下所示。

gridCustomers.DataSource = 客户;gridCustomers.DataBind();

我会想到的一些要点概述如下,需要专家输入...

  • 禁用 gridview 的视图状态(因为这会降低页面的性能)。
  • 使用会话对象来持久化更改(或者你会推荐什么。两种方式绑定在这里真的有用吗,我不知道,因为我没有尝试过。)

非常感谢您的想法/建议。我知道我可能会为此感到愤怒,但我认为好的旧 DataSet 在这里可能很有用(因为它具有能够跟踪更改等的所有基本信息)。

0 投票
1 回答
937 浏览

sql-server-2008 - 对 2000 行数据使用批量插入

对 2000 行数据使用批量插入有意义吗?

实际可能是500-2K。

顺便说一句,批量插入会忽略约束还是设置?

(在服务器端使用 sql server 2008 和 .net,数据通过 Web 服务(wse 或 WCF)进入)。

0 投票
2 回答
1609 浏览

c# - 批量插入问题

我在客户端有一个 CSV 文件,我想开发一个 C# 应用程序来将数据批量插入数据库的表中以最小化日志输出。我对是否在客户端使用 ADO.NET 来调用数据库服务器中的存储过程感到困惑。什么样的代码需要在客户端开发,什么样的代码需要在服务器端以存储过程的形式实现?

但我没有从谷歌找到任何样本。有哪些即用型样品?:-)

编辑:更多信息:

我在客户端有很多数据,我想导入数据库,但我不想要所有许多事务日志的开销。出于安全原因,我想在服务器端开发一个存储过程并从客户端(ADO.NET)调用。我想知道实现这样的目标。服务端存储过程需要开发什么样的T-SQL,客户端如何高效调用/填充数据?

如果还有什么不清楚的地方,请随时告诉我。

0 投票
2 回答
1117 浏览

mysql - MySQL 查询,批量插入

我有一个要在 MYSQL 表中插入的批量数据,假设一次 10k,我正在做的是将数据存储在 XML 文件中,然后进行插入(数据大约为 50K 行),这需要很多时间,在 MySQL 表中是否有批量插入的选项。

在此先感谢,
请帮助。

0 投票
4 回答
4199 浏览

sql-server - 截断错误 SQL server 2005 删除/插入

所以我正在尝试使用 SSIS 进行批量插入并不断获得:

“Microsoft SQL Native Client”Hresult:0x80004005 描述:“字符串或二进制数据将被截断。”

即使我已经将每一列的数据转换为与插入行的表完全相同的类型。我使用了一个视图,数据看起来就像它应该在数据库插入步骤之前一样。仍然得到错误。

接下来,我进入 sql server management studio 并在该该死的表中设置了一个插入查询,但仍然得到相同的截断错误。然后我设置了 ANSI_WARNINGS OFF 并且插入的工作数据在表中看起来不错。现在,当我尝试删除此行时,出现截断错误。

除了对这种情况的任何基本输入之外,我的问题是如何关闭 SSIS 中的 ANSI_WARNINGS 以便批量加载可以继续?