批量插入问题

2024-02-28

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

但我没有从谷歌找到任何样本。有哪些现成可用的样品? :-)

编辑:更多信息:

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

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


你可以挂钩CSV阅读器 http://www.codeproject.com/KB/database/CsvReader.aspx到 SqlBulkCopy,它很好地完成了这项工作......类似于(未经测试):

using (CsvReader reader = new CsvReader(path))
using (SqlBulkCopy bcp = new SqlBulkCopy(CONNECTION_STRING))
{
    bcp.DestinationTableName = "SomeTable";
    bcp.WriteToServer(reader);
}

edit您通常会批量插入到staging表,然后使用常规存储过程将数据移入real table.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

批量插入问题 的相关文章

  • 每个托管线程是否都有自己对应的本机线程?

    我想知道是否在 Net 中创建托管线程 通过调用Thread Start 导致在后台创建一个本机线程 那么托管线程是否有对应的本机线程呢 如果是 当托管线程等待或睡眠时 是否意味着相应的本机线程也在等待或睡眠 是的 NET 线程映射到所有当
  • 如何在c++中读取pcap文件来获取数据包信息?

    我想用 C 编写一个程序来读取 pcap 文件并获取数据包的信息 例如 len sourc ip flags 等 现在我找到了如下代码 我认为它会帮助我获取信息 但是我有一些疑问 首先我想知道应该将哪个库添加到我的程序中 然后什么是 pca
  • 如何让 Swagger 插件在自托管服务堆栈中工作

    我已经用 github 上提供的示例重新提出了这个问题 并为任何想要自己运行代码的人提供了一个下拉框下载链接 Swagger 无法在自托管 ServiceStack 服务上工作 https stackoverflow com questio
  • ClickOnce 应用程序错误:部署和应用程序没有匹配的安全区域

    我在 IE 中使用 FireFox 和 Chrome 的 ClickOnce 应用程序时遇到问题 它工作正常 异常的详细信息是 PLATFORM VERSION INFO Windows 6 1 7600 0 Win32NT Common
  • 复制 std::function 的成本有多高?

    While std function是可移动的 但在某些情况下不可能或不方便 复制它会受到重大处罚吗 它是否可能取决于捕获变量的大小 如果它是使用 lambda 表达式创建的 它依赖于实现吗 std function通常被实现为值语义 小缓
  • 错误:表达式不产生值

    我尝试将以下 C 代码转换为 VB NET 但在编译代码时出现 表达式不产生值 错误 C Code return Fluently Configure Mappings m gt m FluentMappings AddFromAssemb
  • java.io.Serialized 在 C/C++ 中的等价物是什么?

    C C 的等价物是什么java io Serialized https docs oracle com javase 7 docs api java io Serializable html 有对序列化库的引用 用 C 序列化数据结构 ht
  • 由 IHttpClientFactory 注入时模拟 HttpClient 处理程序

    我创建了一个自定义库 它会自动为依赖于特定服务的 Polly 策略设置HttpClient 这是使用以下方法完成的IServiceCollection扩展方法和类型化客户端方法 一个简化的例子 public static IHttpClie
  • 在 C 中初始化变量

    我知道有时如果你不初始化int 如果打印整数 您将得到一个随机数 但将所有内容初始化为零似乎有点愚蠢 我问这个问题是因为我正在评论我的 C 项目 而且我对缩进非常直接 并且它可以完全编译 90 90 谢谢 Stackoverflow 但我想
  • 为什么调用非 const 成员函数而不是 const 成员函数?

    为了我的目的 我尝试包装一些类似于 Qt 共享数据指针的东西 经过测试 我发现当应该调用 const 函数时 会选择它的非 const 版本 我正在使用 C 0x 选项进行编译 这是一个最小的代码 struct Data int x con
  • 在一个平台上,对于所有数据类型,所有数据指针的大小是否相同? [复制]

    这个问题在这里已经有答案了 Are char int long 甚至long long 大小相同 在给定平台上 不能保证它们的大小相同 尽管在我有使用经验的平台上它们通常是相同的 C 2011 在线草稿 http www open std
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的
  • C#:帮助理解 UML 类图中的 <>

    我目前正在做一个项目 我们必须从 UML 图编写代码 我了解 UML 类图的剖析 但我无法理解什么 lt
  • “接口”类似于 boost::bind 的语义

    我希望能够将 Java 的接口语义与 C 结合起来 起初 我用过boost signal为给定事件回调显式注册的成员函数 这非常有效 但后来我发现一些函数回调池是相关的 因此将它们抽象出来并立即注册所有实例的相关回调是有意义的 但我了解到的
  • 如何设置 log4net 每天将我的文件记录到不同的文件夹中?

    我想将每天的所有日志保存在名为 YYYYMMdd 的文件夹中 log4net 应该根据系统日期时间处理创建新文件夹 我如何设置它 我想将一天中的所有日志保存到 n 个 1MB 的文件中 我不想重写旧文件 但想真正拥有一天中的所有日志 我该如
  • 如何在非控制台应用程序中查看 cout 输出?

    输出到调试窗口似乎相当繁琐 我在哪里可以找到cout如果我正在编写非控制台信息 则输出 Like double i a b cout lt lt b lt lt endl I want to check out whether b is z
  • 按 Esc 按键关闭 Ajax Modal 弹出窗口

    我已经使用 Ajax 显示了一个面板弹出窗口 我要做的是当用户按 Esc 键时关闭该窗口 这可能吗 如果有人知道这一点或以前做过这一点 请帮助我 Thanks 通过以下链接 您可以通过按退出按钮轻松关闭窗口 http www codepro
  • 不同类型指针之间的减法[重复]

    这个问题在这里已经有答案了 我试图找到两个变量之间的内存距离 具体来说 我需要找到 char 数组和 int 之间的距离 char data 5 int a 0 printf p n p n data 5 a long int distan
  • System.IO.FileNotFoundException:找不到网络路径。在 Windows 7 上使用 DirectoryEntry 对象时出现异常

    我正在尝试使用 DirectoryEntry 对象连接到远程 Windows 7 计算机 这是我的代码 DirectoryEntry obDirEntry new DirectoryEntry WinNT hostName hostName
  • 如何从 ODBC 连接获取可用表的列表?

    在 Excel 中 我可以转到 数据 gt 导入外部数据 gt 导入数据 然后选择要使用的数据源 然后在提供登录信息后 它会给我一个表格列表 我想知道如何使用 C 以编程方式获取该列表 您正在查询什么类型的数据源 SQL 服务器 使用权 看

随机推荐

  • 根目录中的新 git 存储库包含子目录中的现有存储库

    我正在开发一个目前不受任何修订控制的大型代码库 是的 确实如此 我一直在一个深层目录中开发一个组件 并创建了一个隐蔽的 git 存储库来跟踪我的更改 我现在想将所有代码添加到源代码管理中 并为整个目录树创建一个存储库 我希望新的外部存储库包
  • 使用 Web Audio Api 播放 Stream 中的点击声音

    我有一个奇怪的问题 我正在使用网络音频播放来自服务器的流 我通过以下方式做到这一点 var d2 new DataView evt data var data new Float32Array d2 byteLength Float32Ar
  • 如何使用 iTextSharp 缩放 PDF 页面,同时保持方向?

    如何在 itextsharp 中保持旋转的同时缩放 pdf 页面 我有以下内容 但我失去了旋转 public static void ScaleToLetter string inPDF string outPDF PdfReader re
  • 如何在不连续重置的情况下将esp8266从深度睡眠中唤醒

    我正在使用 esp8266 构建 IR 到 wifi 桥接器 基本上 我正在构建一个连接到红外遥控器内的 esp8266 的红外接收器 以通过 wifi 将接收到的红外远程按键转发到服务器 我使用的是 Wemos D1 Mini 我已经让
  • 如何在IE10中使用css线性渐变?

    在 IE10 中 我试图创建一个 css 线性渐变 从页面顶部到页面底部 这就是我到目前为止所拥有的
  • XML 解析错误:XML 或文本声明不在 php 中实体的开头

    您好 我正在 php 中生成 xml 文件 但出现错误 XML 解析错误 XML 或文本声明不在实体的开头 我的代码是
  • 某些设备在下班后收到 Gcm 通知

    我正在尝试使用 gcm 通知 我的服务器代码工作正常 并且我获得了成功作为确认 问题是通知发送正确 1 在大多数设备中 通知是立即收到的 在谷歌 Nexus 索尼手机上测试 2 其他设备也在几个小时后收到通知 是的 hours 在 Karb
  • Swift:IAP 更新交易未在 .Purchased 上调用

    我的代码有问题 updateTransactions 函数仅在交易进行时调用一次 交易完成后不再调用 func buyProduct product SKProduct let payment SKPayment product produ
  • Python PyQt - QTableWidget、JSON 和 emitSignal 导致空白单元格

    我将 PyQt 用于一个简单的应用程序 该应用程序从包含 JSON 格式字符串的日志文件中读取数据 并将它们很好地输出到表中 一切都按预期工作 除非我尝试从 加载 函数发出信号 该信号由主窗口拾取 位于一个设计为用新信息重新排列表的槽中 如
  • Lucene TermQuery 和 QueryParser

    我有 2 个 lucene 查询 1 Term term new Term Properties LUCENE APPARTMENT ADDRESS address Query termQuery new TermQuery term To
  • Flutter showDialog 未在 PopupMenuItem 点击上显示

    我在用着PopupMenuButton在我的应用程序中 我想要showDialog在点击一个PopupMenuItem My PopupMenuItem PopupMenuItem child Text Show dialog onTap
  • setState 方法导致 Reactjs 函数中的结果无限循环

    该代码显示数组中的用户记录 我还创建了一个updateCount 功能对内容显示的用户进行计数 我可以看到计数结果alerted并在控制台中 现在我想显示计数结果 为此 我初始化setState 内的方法updateCount功能 upda
  • PHP 和 Java 中的 SHA256

    我正在将一些 Java 代码移植到 PHP 代码 在Java中我有一个哈希SHA256代码如下 public static String hashSHA256 String input throws NoSuchAlgorithmExcep
  • 从 Action 指令创建 DynamicMethod

    我正在使用 DynamicMethod 并旨在执行以下操作 我有一个 Action 从中可以使用字节形式获取 IL 代码GetILAsByteArray 从这个字节我想创建一个动态方法并执行 这是我正在尝试做的事情的一个例子 class P
  • 在 Windows 10 上使用 nuwen MinGW 的 C++17 文件系统

    我想尝试 C 17 中的新文件系统库 因此尝试复制来自 cppreference com 的 std filesystem current path 示例 https en cppreference com w cpp filesystem
  • PDO 语句会自动转义吗?

    PHP PDO 语句是自动转义的 还是仅准备好的语句 例如 假设 username and password是用户输入 以下代码是否安全 或者是否容易受到注入 dbh new PDO mysql host localhost dbname
  • 在 std::wstring 中查找方法

    我已声明Wstring如下 wstring strID 当我尝试查找出现的子字符串时 如下所示 int index strID find LABS 我收到如下错误 error C2664 unsigned int std basic str
  • 如何在 python 中使用可变宽度高斯函数执行卷积?

    我需要使用高斯执行卷积 但是高斯的宽度需要改变 我不进行传统的信号处理 而是需要根据设备的分辨率获取完美的概率密度函数 PDF 并 涂抹 它 例如 假设我的 PDF 一开始是尖峰 增量函数 我将其建模为非常窄的高斯 经过我的设备运行后 它将
  • Spring中如何只实现CrudRepository的特定方法?

    我在用着CrudRepositoryspring data jpa 只定义一个实体的接口 然后拥有所有标准的 CRUD 方法 而无需显式提供实现 例如 public interface UserRepo extends CrudReposi
  • 批量插入问题

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