带参数的sql语句!不懂

带参数的sql语句是什么语句sql="SELECTnameFROMpersonWHEREid=?andpassword=?";这算什么语句,这是select语句,sele... 带参数的sql语句是什么语句

sql = "SELECT name FROM person WHERE id=? and password=?" ;
这算什么语句,这是select语句,
select * from person;
insert into note(title,author,content) values('标题','作者','123123');

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

大家帮帮说说,什么是带参数的SQL语句,,

再说说优点和缺点
展开
 我来答
开心答问题
推荐于2018-04-21 · TA获得超过139个赞
知道答主
回答量:213
采纳率:0%
帮助的人:182万
展开全部
简单的跟你说吧
sql ="insert into note(title,author,content) values(?,?,?)";
像这种有带问号的SQL语句就是带参数的。

优点就是:1、防止SQL注入
2、参数不用引号(出错率低)

缺点:要逐个把参数对应的写麻烦了一点,不过现在程序基本都是带参数的,这样安全性高了好多
wuqiao5257
2010-05-01 · TA获得超过2090个赞
知道大有可为答主
回答量:776
采纳率:100%
帮助的人:1321万
展开全部
sql ="insert into note(title,author,content) values(?,?,?)";
上面的这样的就是带参数的SQL语句。
下面的那样的就是存储过程。
set rs=server.CreateObject("adodb.recordset")
sql="select * from note"
rs.open sql,conn,1,3
rs.addnew
rs("title")=?
rs("author")=?
rs("content")=?
rs.update
rs.close
set rs=nothing

带参数的SQL语句的优点:不用关心语句的单引号的问题了
,令外可以有效的防止SQL注入的非法入侵,这样写程序在编译的时候就把那语句编译了,不会与其它字符匹配了,这就是防止SQL注入的问题了,

唯一的缺点就是占用系统资源的问题了,因为它是早被预编译好的东西,所以系统在调用的时候是直接使用的,不需要再次进行对SQL语句进行编译了,如果项目小的话,少量的这样的代码可以不用计较资源的问题了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lzp4881
2010-05-01 · TA获得超过2394个赞
知道大有可为答主
回答量:2825
采纳率:0%
帮助的人:3000万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式