求大神讲解c#中sqlparameter的用法

求大神讲解c#中sqlparameter的用法,第1张

C# 中SqlParameter类的使用方法小结

在c#中执行sql语句时传递参数的小经验 1、直接写入法: 例如: int Id =1string Name="lui"cmd.CommandText="insert into TUserLogin values("+Id+",'"+Name+"')" 因为Id是数值,所以在传递的时候只需要在sql字符串中用"+Id+"即可实现,而 Name是字符串,所以在传递的时候还需要在"+Name+"两边各加一个单引号(')来 实现 2、给命令对象添加参数法: 例如:int Id =1 string Name="lui" cmd.CommandText="insert into TUserLogin values(@Id,@Name)" //上条语句中直接在sql语句中写添加的参数名,不论参数类型都是如此. SqlParameter para=new SqlParameter("@Id",SqlDbType.int,4)//生成一个名字为@Id的参数,必须以@开头表示是添加的参数,并设置其类型长度,类型长度与数据库中对应字段相同 para.Value=Id//给参数赋值 cmd.Parameters.Add(para)//必须把参数变量添加到命令对象中去。 //以下类似 para=new SqlParameter("@Name",SqlDbType.VarChar,16) para.Value=Name com.Parameters.Add(para) ...然后就可以执行数据库 *** 作了。

-----------------------------------

或者用数组

1.arr为数组,数组中的对象类型是SqlParameter

2.SqlParameter数组添加方法:

protected void Button1_Click(object sender, EventArgs e)

{

string strSql="insert into Invoice_Rebate_Customer_L (FORM_ID,LINE_NO) values (@formNo,@lineNo)"

SqlParameter[] paras =new SqlParameter[2]

paras[0] = new SqlParameter("@formNo", SqlDbType.NVarChar)

paras[0].Value = "88888"

paras[1] = new SqlParameter("@lineNo", SqlDbType.Int)

paras[1].Value = 8

ExecuteSql(strSql, paras, CommandType.Text)

}

void ExecuteSql(string strSql,SqlParameter[] paras,CommandType cmdType)

{

SqlConnection con = new SqlConnection("Server=aukm2Database=BUUID=buuserPWD=buinfo")

con.Open()

SqlCommand cmd = new SqlCommand()

cmd.Connection = con

cmd.CommandType = cmdType

cmd.CommandText = strSql

foreach (SqlParameter p in paras)

{

cmd.Parameters.Add(p)

}

cmd.ExecuteNonQuery()

con.Close()

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11391510.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存