mysql parameters_MySqlCommand Command.Parameters.Add已过时?mysql-问答-阿里云开发者社区-阿里云...

我正在Visual Studio 2010中制作一个C#Windows Form应用程序。

该应用程序正在连接到mysql数据库,我想在其中插入数据。

现在我有这部分代码了:

MySqlConnection connection; string cs = @"server=server ip;userid=username;password=userpass;database=databse"; connection = new MySqlConnection(cs); connection.Open();

MySqlCommand command = new MySqlCommand(); string SQL = "INSERT INTO twMCUserDB (mc_userName, mc_userPass, tw_userName, tw_userPass) VALUES ('@mcUserName', '@mcUserPass', '@twUserName', '@twUserPass')"; command.CommandText = SQL; command.Parameters.Add("@mcUserName", mcUserNameNew); command.Parameters.Add("@mcUserPass", mcUserPassNew); command.Parameters.Add("@twUserName", twUserNameNew); command.Parameters.Add("@twUserPass", twUserPassNew); command.Connection = connection; command.ExecuteNonQuery(); connection.Close(); 连接很好。那个有效。

我在这里读到,现在的方式是执行查询的一种保存方式。这样还对吗?

现在是真正的问题。通过上面的代码,我在Visual Studio中收到以下警告:

'MySql.Data.MySqlClient.MySqlParameterCollection.Add(string, object)' is obsolete: '"Add(String parameterName, Object value) has been deprecated. Use AddWithValue(String parameterName, Object value)"' 该警告适用于每个参数。

而且它甚至都不起作用,因为插入的值是@ mcUserName,@ mcUserPass等,而不是变量mcUserNameNew等所保存的值...

所以我的问题是,我做错什么了吗,SQL注入保存查询的新方法是什么?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值