带参数的sql语句!不懂

带参数的sql语句!不懂,第1张

简单的跟你说吧

sql ="insert into note(title,author,content) values(?,?,?)"

像这种有带问号的SQL语句就是带参数的。

优点就是:1、防止SQL注入

2、参数不用引号(出错率低)

缺点:要逐个把参数对应的写麻烦了一点,不过现在程序基本都是带参数的,这样安全性高了好多

你需要了解sql语句的拼接和一般字符串的拼接的异同.

例如:在sql脚本语句中,字符串用单引号'',这些在C#语句中拼接"sql语句"字符串时需要注意.

你可以在vs.net中写一个用字符串拼接的sql语句,最后把它赋值给一个字符串对象.然后用断点调试区查看生成的sql语句的结果,一般sql语句较长,验证的方式都是把这段sql语句copy到sql sever的脚本文件(.sql)中去执行一下,就知道是否正确了.当然也有先在sql server 中调试好拼接字符串后再copy到程序代码中去修改的.具体方式不定.

(以上是介绍的拼接sql语句方法,不过这种方式的安全性不高,常见的sql注入式攻击就是利用的拼接sql语句的缺陷.)

你还可以考虑使用带参数的存储过程来实现,这个就需要了解存储过程的一些知识了,具体的方法我就不介绍了,关于带参数的存储过程,网上有很多例子参考.


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

原文地址: http://outofmemory.cn/bake/11807254.html

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

发表评论

登录后才能评论

评论列表(0条)

保存