cmd.Parameters.Add 无法传递参数的烦人问题

csbmm csbmm 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区




OracleCommand cmd = new OracleCommand() ;


cmd.CommandText = " Insert into TBL_STUDENT values ";
cmd.CommandText += " (";
cmd.CommandText += " @NAME";
cmd.CommandText += " ,@STUDENT_ID";
cmd.CommandText += " ,@GENDER";
cmd.CommandText += " ,@CLASS";
cmd.CommandText += " )";

cmd.Parameters.Add("@NAME", OracleType.VarChar, 20).Value = myfrm.txt_Name.Text.ToString();
cmd.Parameters.Add("@STUDENT_ID", OracleType.VarChar, 20).Value = myfrm.txt_Student_Id.Text.ToString();
cmd.Parameters.Add("@GENDER", OracleType.VarChar, 10).Value = myfrm.txt_Gender.Text.ToString();
cmd.Parameters.Add("@CLASS", OracleType.VarChar, 10).Value = myfrm.txt_Class.Text.ToString();

return cmd ;


调试时发现 这四个控件的值都已经取到了,
myfrm.txt_Name.Text.ToString();myfrm.txt_Student_Id.Text.ToStrin();
myfrm.txt_Gender.Text.ToString();myfrm.txt_Class.Text.ToString();

但是最后 cmd.CommandText .ToString ()的值仍然是 Insert into TBL_STUDENT values ( @NAME ,@STUDENT_ID ,@GENDER ,@CLASS )

也就是说控件值并没有传入sql语句,为什么会这样呢?




...全文

相关推荐

asp.net Parameters.AddWithValue方法在SQL语句的 Where 字句中的用法

今天晚上看论坛,有人提问说,Parameters.AddWithValue方法在有些情况下不好使

NEDL001

C#和asp.net中链接数据库中参数的几种传递方法实例代码

介绍了C#和asp.net中链接数据库中参数的几种传递方法实例代码,有需要的朋友可以参考一下

weixin_38714653

SqlServer参数化查询之where in和like实现详解

身为一名小小的程序猿,在日常开发中不可以避免的要和where in和like打交道,在大多数情况下我们传的参数不多简单做下单引号、敏感字符转义之后就直接拼进了SQL,执行查询,搞定。若有一天你不可避免的需要提高SQL的查询性能,需要一次性where in 几百、上千、甚至上万条数据时,参数化查询将是必然进行的选择。然而如何实现where in和like的参数化查询,是个让不少人头疼的问题。 where in 的参数化查询实现 首先说一下我们常用的办法,直接拼SQL实现,一般情况下都能满足需要 代码如下: string userIds = “1,2,3,4”; using (SqlConnec

weixin_38509082

C#获取存储过程返回值和输出参数值的方法

主要介绍了C#获取存储过程返回值和输出参数值的方法,有需要的朋友可以参考一下

weixin_38607971

详解C#中SqlParameter的作用与用法

本篇文章主要介绍了C#中SqlParameter的作用与用法,因为通过SQL语句的方式,有时候存在脚本注入的危险,所以在大多数情况下不建议用拼接SQL语句字符串方式,希望通过SqlParameter实现来实现对数据的操作。

weixin_38733885
评论 15
收藏 已收藏
分享
返回顶部
csbmm
C# 111,129 成员 642,539 内容