using System; using System.Collections.Generic; using System.Linq; using System.Text; using FirebirdSql.Data.FirebirdClient; using FireBirdUtil.SqlUtils; namespace FireBirdUtil.SqlHelpers { public class UpdateHelper { private string _Database; private FbConnection _Connection; private FbTransaction _Transaction; /// /// 用于直接更新数据 /// public UpdateHelper(string database)//用于直接更新数据 { #if DEBUG if (string.IsNullOrEmpty(database)) throw new ArgumentException("构造函数参数不允许为空"); #endif _Database = database; } /// /// 既可用于在事务中,更新数据,也可用于直接更新数据.之所以加上database参数,是为了直接更新数据时使用 /// public UpdateHelper(string database, FbConnection connection, FbTransaction transaction)//既可用于在事务中,更新数据,也可用于直接更新数据.之所以加上database参数,是为了直接更新数据时使用 : this(database) { #if DEBUG if (connection == null || transaction == null) throw new ArgumentException("构造函数的参数不允许为空"); #endif _Connection = connection; _Transaction = transaction; } public void Update(string tableName, Dictionary newValues, string conditions) { if (_Connection == null || _Transaction == null) SQLExecuteUtil.Update(_Database, tableName, newValues, conditions); else SQLExecuteUtil_Transaction.Update(_Connection, _Transaction, tableName, newValues, conditions); } } }