using System; using System.Collections.Generic; using System.Linq; using System.Text; using FirebirdSql.Data.FirebirdClient; using FireBirdUtil.SqlUtils; namespace FireBirdUtil.SqlHelpers { public class InsertHelper { private string _Database; private FbConnection _Connection; private FbTransaction _Transaction; /// /// 用于直接插入数据 /// public InsertHelper(string database)//用于直接插入数据 { #if DEBUG if (string.IsNullOrEmpty(database)) throw new ArgumentException("构造函数参数不允许为空"); #endif _Database = database; } /// /// 既可用于在事务中,插入数据,也可用于直接插入数据.之所以加上database参数,是为了直接插入数据时使用 /// public InsertHelper(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 Insert(string tableName, IDictionary fieldsValues) { if (_Connection == null || _Transaction == null) SQLExecuteUtil.Insert(_Database, tableName, fieldsValues); else SQLExecuteUtil_Transaction.Insert(_Connection, _Transaction, tableName, fieldsValues); } } }