以前都是用sql server做.net开发。操作数据库那么好办,直接配置好sqldatasource,然后写上查询字符串,如
select * from my_table where id = @id and name = @name,当然也要配置好id,和name参数...
现在用mysql做.net开发,也自然而然的这样来操作数据库,但是,这是行不通的。然后在网上搜答案,无果。最后只得放弃传参的查询字符串,自己拼字符串了。但是这样一来,就不可避免的要自己处理注入式攻击,太麻烦了。于是不甘心,今天又试了一下,终于解决了:
mysql的字符串改成select * from my_table where id = ? and name = ?,但为什么这样呢...
突然想起了mysql 动态执行sql的语法:
prepare stmt_name from select * from my_table where id = ? and name = ?;
execute htmt using @id, @name;
难道.net操作mysql是用的这个语法?~
请解答...