为什么这个SQL语句不起作用?

Nav*_*ini -2 mysql sql select

somene请告诉我为什么这个SQL语句没有执行?

我得到的错误是'你的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第1行'Sood'附近使用正确的语法.

表名(tbl_authordescription)和列名(ad_authorname)是正确的,因为我已经检查了至少50次.

$bd_author = 'Piyush Sood';

$checkauthorquery = "SELECT * FROM tbl_authordescription WHERE ad_authorname = $bd_author";
$Recordset1 = mysql_query($checkauthorquery, $connection_psfriend) or die(mysql_error());

if($Recordset1){
    echo 'The author exists.';  
}
Run Code Online (Sandbox Code Playgroud)

php*_*r01 5

查询中的作者姓名未封装.尝试在其周围添加单引号.

$checkauthorquery = "SELECT * FROM tbl_authordescription WHERE ad_authorname = '$bd_author'";
Run Code Online (Sandbox Code Playgroud)

更好的是,结帐准备好的陈述.