那么 $name="ABC"; $query="select * from my_tab where a_name=\"$name\";"; 又怎么解决呢?我用了 $query="select * from my_tab where a_name=\'$name\';"; 好像这个不可以好用啊! 怎么办?
$query="select * from my_tab where a_name=$name";
$query="select * from my_tab where a_name= '$a_name' ";
$name="ABC";
$query="select * from my_tab where a_name=\"$name\";";
又怎么解决呢?我用了
$query="select * from my_tab where a_name=\'$name\';";
好像这个不可以好用啊!
怎么办?
用ASCII保存试试。
內定地,MySQL搜索是大小寫不敏感的(盡管有一些字符集從來不是忽略大小寫的,例如捷克語)。這意味著,如果你用col_name LIKE 'a%'搜尋,你將得到所有以A或a開始的列值。如果你想要使這個搜索大小寫敏感,使用像INDEX(col_name, "A")=0檢查一個前綴。或如果列值必須確切是"A",使用STRCMP(col_name, "A") = 0。簡單的比較操作(>=、>、= 、< 、<=、排序和聚合)是基於每個字符的“排序值”。有同樣排序值的字符(像E,e和'e)被視為相同的字符!LIKE比較在每個字符的大寫值上進行(E==e 但是E<>'e)。如果你想要一個列總是被當作大小寫敏感的方式,聲明它為BINARY。見7.7 CREATE TABLE句法。如果你使用以所謂的big5編碼的中文數據,你要使所有的字符列是BINARY,它可行,是因為big5編碼字符的排序順序基於 ASCII代碼的順序
修改你的表字段属性让它带上BINARY属性就可以了,