首頁 >後端開發 >php教程 >mysql语句中的冒号是什么意思?

mysql语句中的冒号是什么意思?

WBOY
WBOY原創
2016-06-23 14:02:042590瀏覽

mysql语句中的冒号是什么意思?


回复讨论(解决方案)

$db->bandVars();  传递值 
echo $check_query;   就知道了。

可以看看手册的pdo类

<?php/* Execute a prepared statement by binding PHP variables */$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT name, colour, calories    FROM fruit    WHERE calories < :calories AND colour = :colour');$sth->bindParam(':calories', $calories, PDO::PARAM_INT);$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);$sth->execute();?> 

没有别的意思符号而已,以便区别于 sql 的语法成分
bindVars 方法将定义的符号与实际的变量关联起来

Example #1 Execute a prepared statement with named placeholders<?php/* Execute a prepared statement by binding PHP variables */$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT name, colour, calories    FROM fruit    WHERE calories < :calories AND colour = :colour');$sth->bindParam(':calories', $calories, PDO::PARAM_INT);$sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12);$sth->execute();?>Example #2 Execute a prepared statement with question mark placeholders<?php/* Execute a prepared statement by binding PHP variables */$calories = 150;$colour = 'red';$sth = $dbh->prepare('SELECT name, colour, calories    FROM fruit    WHERE calories < ? AND colour = ?');$sth->bindParam(1, $calories, PDO::PARAM_INT);$sth->bindParam(2, $colour, PDO::PARAM_STR, 12);$sth->execute();?>

大神,以下mysql 语句用来查询排名,在Mysql 中能执行,但是S2SH 框架中就不行,你能指点一下吗?
select t.*,@rownum:=@rownum+1 AS rownum  
from (SELECT sum(yjb_yji)  as total,yyryusername,yjb_yyry_id  
FROM yjb where  month(createtime) =month(now()) and year(createtime)=year(now())
 group by yjb_yyry_id order by total desc) t,(SELECT @rownum:=0) r 

报此bug: org.hibernate.QueryException: Space is not allowed after parameter prefix ':' 

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn