我只是在网上冲浪,发现了一个类似的问题:
sql = "select milk_rate from special_milk_rate
where code_producer_id=? and effective_from <= ?
and effective_till >= ?"
这个查询究竟意味着什么意味着什么是使用?在这个声明中。
还有一个更重要的是&amp;在sql。
答案 0 :(得分:9)
这通常意味着准备好的语句,其中的参数将在以后填写。 (参见例如http://en.wikipedia.org/wiki/Prepared_statements#Parameterized_statements)。
答案 1 :(得分:2)
这个查询究竟意味着什么意味着什么是使用?在这个声明中。
问号是针对参数的。
还有一个更重要的是&amp;在sql。
&安培;是sql中的按位AND运算符
答案 2 :(得分:1)
在准备好的语句中找到问号,这意味着它是参数化的,并且可以一次又一次地调用,而无需通过更改参数来重建整个sql语句。一些框架使用与SqlCommands一起使用的框架。那些封装转义并防止sql注入攻击。
某些框架也允许命名参数。
答案 3 :(得分:1)
问号应该包含实际参数。
E.g。
"select milk_rate from special_milk_rate
where code_producer_id=2 and effective_from <= '20101231'
and effective_till >= '20110124'"
答案 4 :(得分:1)
这是一篇很好的文章:
在某些陈述中,参数是 准备声明时未知 因为可以有不同的值 每次声明都插入 执行。在这些陈述中,您可以 使用问号(?)占位符 必须提供参数的地方 当语句执行时。
答案 5 :(得分:1)
&安培;通常表示在运行时可能会提示您输入的变量或替换值