当前位置: 首页 >>服务端开发 >>Asp.Net >>C#更新带参数的SQL语句实例

C#更新带参数的SQL语句实例

时间:2018/8/31 10:16:59 【admin】

C#更新带参数的SQL语句实例…

        public static bool SqlAddPareTEST(string WarningPrice,string strTestName, int intTestClass, int intTestCategory, Single floatTestCost, Single floatTestPrice, string strTestDrive, 

            DateTime dateTestDateStr, DateTime? dateTestDateEnd, int intTestLimit, string strStandard, string strOption, int intServiceMode, int intTownship, string strTestImgOne,

            string strTestImgTwo, string strTestImgThr, string strTestImgFor, string strTestImgFiv, int intDropId, string strTestPoint, string strTestContent, string strContentMobile, 

            string TestCar, int intDrvExeId, string strTestAuthor, string TestNature = "0", string TestMakeup = "0", string MakeupCount = "0", string LearnShuttle = "",

            string TestShuttle = "", int Retest = 1, string MealsFee = "", int ExamFee = 2, int PhotoFee = 2, int PermitFee = 2, int LearnPeoples = 0, int LearnTimes = 0)

        {

            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into TestData(");

            strSql.Append("TestName,TestClass,TestCategory,TestCost,TestPrice,TestAuthor,TestDrive,TestType,TestDateStr,TestDateEnd,TestLimit,TestCount,TestStandard,TestOption,TestContent,TestState,ServiceMode,Township,TestImgOne,TestImgTwo,TestImgThr,TestImgFor,TestImgFiv,DropId,TestPoint,ContentMobile,TestCar,DrvExeId,OaAuthor,TestNature,TestMakeup,MakeupCount,LearnShuttle,TestShuttle,Retest,MealsFee,ExamFee,PhotoFee,PermitFee,LearnPeoples,LearnTimes,WarningPrice,UpdateDemo)");

            strSql.Append(" values (");

            strSql.Append("@TestName,@TestClass,@TestCategory,@TestCost,@TestPrice,@TestAuthor,@TestDrive,@TestType,@TestDateStr,@TestDateEnd,@TestLimit,@TestCount,@TestStandard,@TestOption,@TestContent,@TestState,@ServiceMode,@Township,@TestImgOne,@TestImgTwo,@TestImgThr,@TestImgFor,@TestImgFiv,@DropId,@TestPoint,@ContentMobile,@TestCar,@DrvExeId,@OaAuthor,@TestNature,@TestMakeup,@MakeupCount,@LearnShuttle,@TestShuttle,@Retest,@MealsFee,@ExamFee,@PhotoFee,@PermitFee,@LearnPeoples,@LearnTimes,@WarningPrice,@UpdateDemo)");

            SqlParameter[] parameters = {

new SqlParameter("@TestName", SqlDbType.VarChar,80),

new SqlParameter("@TestClass", SqlDbType.Int,11),

new SqlParameter("@TestCategory", SqlDbType.Int,11),

new SqlParameter("@TestCost", SqlDbType.Float,20),

                    new SqlParameter("@TestPrice", SqlDbType.Float,20),

                    new SqlParameter("@TestAuthor", SqlDbType.VarChar,15),

                    new SqlParameter("@TestDrive", SqlDbType.VarChar,15),

                    new SqlParameter("@TestType", SqlDbType.VarChar,1),

                    new SqlParameter("@TestDateStr", SqlDbType.DateTime),

                    new SqlParameter("@TestDateEnd", SqlDbType.DateTime),

                    new SqlParameter("@TestLimit", SqlDbType.Int,11),

                    new SqlParameter("@TestCount", SqlDbType.Int,11),

                    new SqlParameter("@TestStandard", SqlDbType.VarChar,1000),

                    new SqlParameter("@TestOption", SqlDbType.VarChar,1000),   

                    new SqlParameter("@TestContent", SqlDbType.Text),   

                    new SqlParameter("@TestState", SqlDbType.Int,11),   

                    new SqlParameter("@ServiceMode", SqlDbType.Int,11),

                    new SqlParameter("@Township", SqlDbType.Int,11),

                    new SqlParameter("@TestImgOne", SqlDbType.VarChar,80),

                    new SqlParameter("@TestImgTwo", SqlDbType.VarChar,80),

                    new SqlParameter("@TestImgThr", SqlDbType.VarChar,80),

                    new SqlParameter("@TestImgFor", SqlDbType.VarChar,80),

                    new SqlParameter("@TestImgFiv", SqlDbType.VarChar,80),

                    new SqlParameter("@DropId", SqlDbType.Int,11),

                    new SqlParameter("@TestPoint", SqlDbType.VarChar,1000),

                    new SqlParameter("@ContentMobile", SqlDbType.NText),

                    new SqlParameter("@TestCar", SqlDbType.Int,11),

                    new SqlParameter("@DrvExeId", SqlDbType.Int,11),

                    new SqlParameter("@OaAuthor", SqlDbType.VarChar,15),

                    new SqlParameter("@TestNature", SqlDbType.VarChar,1000),

                    new SqlParameter("@TestMakeup", SqlDbType.VarChar,15),

                    new SqlParameter("@MakeupCount", SqlDbType.VarChar,15),

                    new SqlParameter("@LearnShuttle", SqlDbType.VarChar,15),

                    new SqlParameter("@TestShuttle", SqlDbType.VarChar,15),

                    new SqlParameter("@Retest", SqlDbType.Int,11),

                    new SqlParameter("@MealsFee", SqlDbType.VarChar,15),

                    new SqlParameter("@ExamFee", SqlDbType.Int,11),

                    new SqlParameter("@PhotoFee", SqlDbType.Int,11),

                    new SqlParameter("@PermitFee", SqlDbType.Int,11),

                    new SqlParameter("@LearnPeoples",SqlDbType.Int,11),

                    new SqlParameter("@LearnTimes", SqlDbType.Int,11),

                    new SqlParameter("@WarningPrice", SqlDbType.Float,20),

                    new SqlParameter("@UpdateDemo",SqlDbType.VarChar,50)

            };

            parameters[0].Value = strTestName;//参数赋值

            parameters[1].Value = intTestClass;//参数赋值

            parameters[2].Value = intTestCategory;//参数赋值

            parameters[3].Value = floatTestCost;//参数赋值

            parameters[4].Value = floatTestPrice;//参数赋值

            parameters[5].Value = strTestAuthor; //参数赋值

            parameters[6].Value = strTestDrive;  //参数赋值

            parameters[7].Value = strTestAuthor.Substring(0, 1);//参数赋值

            parameters[8].Value = dateTestDateStr.ToString("yyyy-MM-dd");//参数赋值

            parameters[9].Value = dateTestDateEnd;//参数赋值

            parameters[10].Value = intTestLimit;//参数赋值

            parameters[11].Value = 0;   //参数赋值

            parameters[12].Value = strStandard;//参数赋值

            parameters[13].Value = strOption;//参数赋值

            parameters[14].Value = strTestContent;  //参数赋值

            parameters[15].Value = Convert.ToInt32(WebConfigurationManager.AppSettings["TestState"]);//参数赋值

            parameters[16].Value = intServiceMode;//参数赋值

            parameters[17].Value = intTownship;//参数赋值

            parameters[18].Value = strTestImgOne;//参数赋值

            parameters[19].Value = strTestImgTwo;//参数赋值

            parameters[20].Value = strTestImgThr;//参数赋值

            parameters[21].Value = strTestImgFor;//参数赋值

            parameters[22].Value = strTestImgFiv;//参数赋值

            parameters[23].Value = intDropId;//参数赋值

            parameters[24].Value = strTestPoint;//参数赋值

            parameters[25].Value = strContentMobile;//参数赋值

            parameters[26].Value = TestCar;//参数赋值

            parameters[27].Value = intDrvExeId;//参数赋值

            parameters[28].Value = PubFun.DrvGetSesVal("MemId").ToString();//参数赋值

            parameters[29].Value = TestNature;//参数赋值

            parameters[30].Value = TestMakeup;//参数赋值

            parameters[31].Value = MakeupCount;//参数赋值

            parameters[32].Value = LearnShuttle;//参数赋值

            parameters[33].Value = TestShuttle;//参数赋值

            parameters[34].Value = Retest;//参数赋值

            parameters[35].Value = MealsFee;//参数赋值

            parameters[36].Value = ExamFee;//参数赋值

            parameters[37].Value = PhotoFee;//参数赋值

            parameters[38].Value = PermitFee;//参数赋值

            parameters[39].Value = LearnPeoples;//参数赋值

            parameters[40].Value = LearnTimes;//参数赋值

            parameters[41].Value = WarningPrice;//参数赋值

            parameters[42].Value = "OA新增课程";//参数赋值

            int num = ExecuteSql(strSql.ToString(), parameters);

            if (num > 0)

            {

                return true;

            }

            else

            {

                return false;

            }

        }


        /// <summary>

        /// 执行SQL语句,返回影响的记录数

        /// </summary>

        /// <param name="SQLString">SQL语句</param>

        /// <returns>影响的记录数</returns>

        public static int ExecuteSql(string SQLString, params SqlParameter[] cmdParms)

        {

            string connectionString = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;//取自配置文件

            using (SqlConnection connection = new SqlConnection(connectionString))

            {

                using (SqlCommand cmd = new SqlCommand())

                {

                    try

                    {

                        PrepareCommand(cmd, connection, null, SQLString, cmdParms);

                        int rows = cmd.ExecuteNonQuery();

                        cmd.Parameters.Clear();

                        return rows;

                    }

                    catch (System.Data.SqlClient.SqlException e)

                    {

                        throw e;

                    }

                    finally

                    {

                        cmd.Dispose();

                        connection.Close();

                    }

                }

            }

        }


        private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trans, string cmdText, SqlParameter[] cmdParms)

        {

            if (conn.State != ConnectionState.Open)

                conn.Open();

            cmd.Connection = conn;

            cmd.CommandText = cmdText;

            if (trans != null)

                cmd.Transaction = trans;

            cmd.CommandType = CommandType.Text;//cmdType;

            if (cmdParms != null)

            {



                foreach (SqlParameter parameter in cmdParms)

                {

                    if ((parameter.Direction == ParameterDirection.InputOutput || parameter.Direction == ParameterDirection.Input) &&

                        (parameter.Value == null))

                    {

                        parameter.Value = DBNull.Value;

                    }

                    cmd.Parameters.Add(parameter);

                }

            }

        }


相关文章

CopyRight:2007-2018 编程语言吧 备案ICP:湘ICP备09009000号-15 http://www.yuyanba.com

分享按钮