Ejemplo n.º 1
0
        /// <summary>
        /// 对Update类SQL语句进行参数处理
        /// </summary>
        /// <param name="sqlStatement">待处理的SQL语句</param>
        /// <param name="db">数据访问对象</param>
        /// <returns>处理后的参数数组</returns>
        private List <IDbDataParameter> ParameterHandlerForUpdate(SqlStatement sqlStatement, ITeldDatabase db)
        {
            var updateSql  = sqlStatement as UpdateSqlStatement;
            var parameters = new List <IDbDataParameter>(updateSql.UpdateFields.ChildCollection.Count);

            for (int parameterIndex = 0; parameterIndex < updateSql.UpdateFields.ChildCollection.Count; parameterIndex++)
            {
                UpdateField updateField = updateSql.UpdateFields.ChildCollection[parameterIndex] as UpdateField;
                if (updateField == null)
                {
                    throw new Exception("ParameterHandlerForUpdate.updateField, parameterIndex:" + parameterIndex);
                }

                FieldValue feildValue = updateSql.UpdateValues.ChildCollection[parameterIndex] as FieldValue;
                if (feildValue == null)
                {
                    throw new Exception("ParameterHandlerForUpdate.feildValue, parameterIndex:" + parameterIndex);
                }

                parameters.Add(ParameterHandler(db, feildValue, updateField));
            }

            return(parameters);
        }
Ejemplo n.º 2
0
        private FieldValue fieldValue; //主键字段值

        #endregion

        #region 构造函数

        /// <summary>
        /// 构造函数
        /// </summary>
        public SqlPrimaryKeyField()
            : base()
        {
            //this.field = new Field();
            this.fieldValue = new FieldValue();
        }