标签:des style blog color io cti ar 代码
以前用command方法执行存储过程增加参数时,总是先用cmd.Parameters.Add方法来设置参数和参数类型,再用Parameters[0].Value来给参数赋值。以前的一个动作代码示例:
1 string strConn = "Data Source=.;Initial Catalog=HISDB;Integrated Security=True"; 2 3 using( SqlConnection conn = new SqlConnection(strConn)) 4 5 { 6 7 conn.Open(); 8 9 SqlCommand cmd = new SqlCommand("AuditMessageInsert", conn); 10 11 //设置命令类型为存储过程,没有设置的话会执行失败 12 13 cmd.CommandType = CommandType.StoredProcedure; 14 15 //设置参数名和类型 16 17 cmd.Parameters.Add("@Target", SqlDbType.NChar); 18 19 cmd.Parameters.Add("@Description", SqlDbType.NChar); 20 21 cmd.Parameters.Add("@Actor", SqlDbType.NChar); 22 23 cmd.Parameters.Add("@Time", SqlDbType.DateTime); 24 25 cmd.Parameters.Add("@Computer", SqlDbType.NChar); 26 27 //给参数赋值 28 29 cmd.Parameters[0].Value = "ATarget"; 30 31 cmd.Parameters[1].Value = "Description"; 32 33 cmd.Parameters[2].Value = "Actor"; 34 35 cmd.Parameters[3].Value = DateTime.Now; 36 37 cmd.Parameters[4].Value = "PC-Computer"; 38 39 cmd.ExecuteNonQuery(); 40 41 }
如果用Parameters.AddWithValue方法就不用这么麻烦了,可以直接加参数名和其值,不用再设置参数的类型,示例代码:
1 string strConn = "Data Source=.;Initial Catalog=HISDB;Integrated Security=True"; 2 3 using( SqlConnection conn = new SqlConnection(strConn)) 4 5 { 6 7 conn.Open(); 8 9 SqlCommand cmd = new SqlCommand("AuditMessageInsert", conn); 10 11 12 13 cmd.CommandType = CommandType.StoredProcedure; 14 15 16 17 18 19 //增加参数:名称与类型 且与表中参数的顺序没关系 20 21 cmd.Parameters.AddWithValue("@Actor", "Actor"); 22 23 cmd.Parameters.AddWithValue("@Target", "Target"); 24 25 cmd.Parameters.AddWithValue("@Description", "Description"); 26 27 28 29 cmd.Parameters.AddWithValue("@Computer", "Computer"); 30 31 cmd.Parameters.AddWithValue("@Time", DateTime.Now); 32 33 34 35 36 37 cmd.ExecuteNonQuery(); 38 39 }
Parameters.AddWithValue(“@参数”,value)方法,布布扣,bubuko.com
Parameters.AddWithValue(“@参数”,value)方法
标签:des style blog color io cti ar 代码
原文地址:http://www.cnblogs.com/sunran/p/3884462.html