/// <summary> /// 创建插入SQL /// </summary> /// <param name="paramz"></param> /// <param name="TableName"></param> /// <param name="FieldValues"></param> /// <returns></returns> public virtual string CreateInsertSQL(out System.Data.IDataParameter[] paramz, string TableName, Dictionary <string, object> FieldValues) { paramz = null; if (String.IsNullOrEmpty(TableName)) { throw new ArgumentNullException("TableName is null"); } if (FieldValues == null || FieldValues.Count == 0) { throw new ArgumentException("FieldValues is empty"); } StringBuilder StrFileds = new StringBuilder(); StringBuilder StrValues = new StringBuilder(); IDataParameters paras = CreateDataParameters(); int index = 0; foreach (String key in FieldValues.Keys) { StrFileds.Append(m_Adapter.AdaptColumnName(key) + ","); String pName = paras.AdaptParameterName(key) + index; paras.AddParameterValue(pName, FieldValues[key]); StrValues.Append(pName + ","); index++; } paramz = paras.Parameters; StrFileds.Remove(StrFileds.Length - 1, 1); StrValues.Remove(StrValues.Length - 1, 1); String SQL = String.Format(CommonSQL.SQL_INSERT, TableName, StrFileds, StrValues); return(SQL); }