本文整理汇总了C#中Spartacus.InsertBlock方法的典型用法代码示例。如果您正苦于以下问题:C# Spartacus.InsertBlock方法的具体用法?C# Spartacus.InsertBlock怎么用?C# Spartacus.InsertBlock使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Spartacus
的用法示例。
在下文中一共展示了Spartacus.InsertBlock方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Transfer
/// <summary>
/// Transfere dados do banco de dados atual para um banco de dados de destino.
/// Conexão com o banco de destino precisa estar aberta.
/// </summary>
/// <returns>Número de linhas transferidas.</returns>
/// <param name="p_query">Consulta SQL para buscar os dados no banco atual.</param>
/// <param name="p_table">Nome da tabela de destino.</param>
/// <param name="p_insert">Comando de inserção para inserir cada linha no banco de destino.</param>
/// <param name="p_destdatabase">Conexão com o banco de destino.</param>
/// <param name="p_log">Log de inserção.</param>
/// <param name='p_startrow'>Número da linha inicial.</param>
/// <param name='p_endrow'>Número da linha final.</param>
/// <param name='p_hasmoredata'>Indica se ainda há mais dados a serem lidos.</param>
public override uint Transfer(string p_query, string p_table, Spartacus.Database.Command p_insert, Spartacus.Database.Generic p_destdatabase, ref string p_log, uint p_startrow, uint p_endrow, out bool p_hasmoredata)
{
uint v_transfered = 0;
System.Collections.ArrayList v_rows = new System.Collections.ArrayList();
try
{
if (this.v_reader == null)
{
this.v_cmd.CommandText = p_query;
this.v_reader = this.v_cmd.ExecuteReader();
this.v_currentrow = 0;
}
p_hasmoredata = false;
while (v_reader.Read())
{
p_hasmoredata = true;
if (this.v_currentrow >= p_startrow && this.v_currentrow <= p_endrow)
{
for (int i = 0; i < v_reader.FieldCount; i++)
p_insert.SetValue(this.FixColumnName(v_reader.GetName(i)).ToLower(), v_reader[i].ToString());
v_rows.Add(p_insert.GetUpdatedText());
v_transfered++;
}
this.v_currentrow++;
if (this.v_currentrow > p_endrow)
break;
}
if (! p_hasmoredata)
{
this.v_reader.Close();
this.v_reader = null;
}
else
{
try
{
p_destdatabase.InsertBlock(p_table, v_rows);
}
catch (Spartacus.Database.Exception e)
{
p_log += e.v_message + "\n";
}
}
return v_transfered;
}
catch (MySql.Data.MySqlClient.MySqlException e)
{
throw new Spartacus.Database.Exception(e);
}
}