sql注入问题

在写sql语句的时候,如果采用组合的方式,那么如果用户恶意输入,就会对数据库造成各种各样的损害

例如:

            string username = "ssssda";
            string password = "dfa';delete from user;";

            MySqlCommand cmd = new MySqlCommand("insert into user set username='" + username+"'"+",password='"+password+"'",conn);//会引发sql注入问题

这样 ,程序执行后,user表的所有内容都会被删除

为了解决这个问题,需要使用以下方法

 MySqlCommand cmd = new MySqlCommand("insert into user set username=@un,password=@pwd", conn);

 cmd.Parameters.AddWithValue("un", username);

 cmd.Parameters.AddWithValue("pwd", password);

这样,执行后,会出现

也就是说,无论用户输入什么,都会被当成参数添加到数据库的表中,因此避免了sql注入的问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值