标签: bulk

如何将慢参数化插入更改为快速批量复制(甚至从内存中)

我的代码中有这样的东西(.Net 2.0,MS SQL)

SqlConnection connection = new SqlConnection(@"Data Source=localhost;Initial
Catalog=DataBase;Integrated Security=True");
  connection.Open();

  SqlCommand cmdInsert = connection.CreateCommand();
  SqlTransaction sqlTran = connection.BeginTransaction();
  cmdInsert.Transaction = sqlTran;

  cmdInsert.CommandText =
     @"INSERT INTO MyDestinationTable" +
      "(Year, Month, Day, Hour,  ...) " +
      "VALUES " +
      "(@Year, @Month, @Day, @Hour, ...) ";

  cmdInsert.Parameters.Add("@Year", SqlDbType.SmallInt);
  cmdInsert.Parameters.Add("@Month", SqlDbType.TinyInt);
  cmdInsert.Parameters.Add("@Day", SqlDbType.TinyInt);
  // more fields here
  cmdInsert.Prepare();

  Stream stream = new FileStream(fileName, FileMode.Open, FileAccess.Read);

  StreamReader reader = new StreamReader(stream);
  char[] delimeter = new char[] {' '};
  String[] records;
  while (!reader.EndOfStream)
  { …
Run Code Online (Sandbox Code Playgroud)

performance copy sql-server-2005 insert bulk

3
推荐指数
1
解决办法
2656
查看次数

在C#中使用自定义分隔符和一些非常非常大的字段值解析文本的最快方法是什么?

我一直在尝试处理一些带有非标准分隔符(不是逗号/引号或制表符分隔符)的分隔文本文件.分隔符是随机ASCII字符,在分隔符之间不会显示.在搜索之后,我似乎只发现.NET中的解决方案不适合我的需求,人们为此编写的自定义库似乎在巨大的输入(4GB文件,其中包含一些字段值)时存在一些缺陷非常容易几百万字符).

虽然这看起来有点极端,但它实际上是电子文档发现(EDD)行业的标准,某些评论软件的字段值包含文档的全部内容.作为参考,我以前在使用csv模块的python中完成了这个,没有任何问题.

这是一个示例输入:

Field delimiter = 
quote character = þ

þFieldName1þþFieldName2þþFieldName3þþFieldName4þ
þValue1þþValue2þþValue3þþSomeVery,Very,Very,Large value(5MB or so)þ
...etc...
Run Code Online (Sandbox Code Playgroud)

编辑:所以我继续从头开始创建一个分隔文件解析器.我有点厌倦使用这个解决方案,因为它可能容易出错.为这样的任务编写我自己的解析器也不会感觉"优雅"或正确.我也有一种感觉,无论如何我可能不必从头开始编写解析器.

c# parsing bulk delimited-text

3
推荐指数
1
解决办法
3338
查看次数

Sybase JConnect:ENABLE_BULK_LOAD用法

那里的任何人都可以通过JConnect(带ENABLE_BULK_LOAD)向Sybase ASE 提供批量插入的示例吗?

我在互联网上搜索,一无所获.

java bulkinsert bulk sybase-ase

3
推荐指数
1
解决办法
1万
查看次数

在Linq to SQL中执行条件批量更新

我有一个SQL表,用于存储带有smallint SortOrder字段的照片.用户可以插入新照片,指定小数排序顺序,将新记录放在2张现有照片之间(或第一张照片之前).SortOrder将存储为smallint,因此当我检测到插入将移动现有记录时,我需要更新所有受影响的照片以将SortOrder增加1.

这在存储过程中很容易实现,但我正在寻找使用Linq to SQL实现此目的的最有效方法.如果我必须将所有记录下载到客户端,更新它们,然后提交它们,那么我将坚持使用已经工作且速度非常快的存储过程.

这是改变记录的T-SQL:

    UPDATE      Photo
    SET         SortOrder = SortOrder + 1
    WHERE       AlbumId = @AlbumId
    AND         SortOrder >= CEILING(@SortOrder)
Run Code Online (Sandbox Code Playgroud)

有没有办法在Linq to SQL中进行这种批量更新而无需获取记录?

bulk linq-to-sql

3
推荐指数
1
解决办法
3455
查看次数

如何以良好的成功率发送批量电子邮件?

在发送批量电子邮件时,有很多关于指南的文章和主题.大多数时候都提到应该将电子邮件发送给订阅的用户.这样我们就可以避免"用户点击邮箱中的垃圾邮件".

在着名的社交网站中有一些功能,我们可以向雅虎联系人列表发送邀请.在这种情况下,我们的联系人列表中的人实际上没有订阅Linkedin来获取邀请或其他邮件.但难以理解的是,Linkedin和Facebook邮件如何不发送垃圾邮件?

email facebook bulk linkedin

3
推荐指数
1
解决办法
2385
查看次数

Oracle中表的批量更新

我有一个要求,我需要从Java程序中的平面文件批量更新表.

平面文件将包含数千个带逗号分隔值的条目.因此,如果在表格中找到平面文件中的条目,我应该更新该行,否则我需要将其插入另一个表格中.所以我写了一个相同的功能.但我的问题是一次更新平面文件中所有条目的表.

我使用SQL加载器遇到批量插入,但不能用于更新表.

我还使用了JDBC批量更新,但问题是存储过程/函数outinout参数无法批量处理.

任何人都可以建议是否有办法做到这一点?

java oracle bulk

3
推荐指数
1
解决办法
1065
查看次数

如何批量插入PostreSQL中的新行

我有没有ID的产品清单(300万件) - 只有标题.但我不知道DB中已存在哪些标题.必须在DB中添加新产品(约290万件).之后,我必须知道每种产品(新的和现有的)的ID.

在PostgreSQL中有最快的方法吗?我可以根据需要更改数据库(添加默认值,添加列等).

sql postgresql insert bulk duplicate-removal

3
推荐指数
1
解决办法
1686
查看次数

如何使用精巧的orm执行批量操作?

我在项目中有dapper orm,我在数据库中保存了数据(1200000row),但在与dapper的事务中,我想要fast.with nhibernate(session statetless)很慢.我认为短小精悍是快速的,因为获取数据(700000)与nhibernate在33秒,与9秒的精巧.

怎么解决问题?

我的代码是:

IDbTransaction trans = connection.BeginTransaction();
connection.Execute(@"
    insert DailyResult(Id, PersonId,DateTaradod,DailyTaradods)
    values(@Id, @PersonId,@DateTaradod,@DailyTaradods)", entity, trans);                                    
trans.Commit();
Run Code Online (Sandbox Code Playgroud)

orm batch-file bulk dapper

3
推荐指数
1
解决办法
814
查看次数

如何在PHP中无限制地发送数千封电子邮件?

我有一个网站,每天早上发送一个时事通讯.
但它不是常规时事通讯,每封电子邮件都有不同的内容,具体取决于用户帐户.

现在我使用一个名为PHPMailer的类,它运行得很好,它可以满足我的需求.但要做到这一点,我使用Gmail帐户进行身份验证.问题是,Gmail与任何其他电子邮件服务一样,都有发送每日限制.
事实上,它只发送了2000封电子邮件.

我怎样才能克服这个问题?我的服务是免费的,我没有钱支付任何额外的服务,我只有我的(专用)服务器.
(ubuntu 12.04,灯堆)

提前谢谢,对不起我糟糕的英语.

php email bulk phpmailer

3
推荐指数
1
解决办法
2900
查看次数

将自定义批量操作添加到Woocommerce 3中的管理订单列表

在Woocommerce后端(admin)中,我有一个功能,允许商店经理使用一组特定的数据下载两个日期之间的所有订单:

function write_to_file($date_initial, $date_final) {
    global $attach_download_dir, $attach_download_file;

    // Opens/creates file
    $myfile = fopen($attach_download_dir . '/' . $attach_download_file, "w") or die("Unable to open file!");

    // Populates first line
    fwrite($myfile, 'Date; Parent Order ID; Order ID' . PHP_EOL);

    // Retrieves orders data
    if ( isset($date_initial) && isset($date_final) ) $args = array( 'date_created' => $date_initial . '...' . $date_final );
    if ( isset($date_initial) && empty($date_final) ) $args = array( 'date_created' => '>=' . $date_initial );
    if ( empty($date_initial) && isset($date_final) …
Run Code Online (Sandbox Code Playgroud)

php backend bulk orders woocommerce

3
推荐指数
1
解决办法
2376
查看次数