$sql = "insert into dbo.".$st_tab." (bike_id,st_id";
if($st_tab === "st1_rec_id"||$st_tab === "st2_rec_id"||$st_tab ==="st3_rec_id")
{
$sql .= ",ln_id";
}
$sql .= ",times,date) values (?,?";
if($st_tab === "st1_rec_id"||$st_tab === "st2_rec_id"||$st_tab ==="st3_rec_id")
{
$sql .= ",?";
}
$sql .= ",?,?)";
echo $sql;
if($st_tab === "st1_rec_id"||$st_tab === "st2_rec_id"||$st_tab ==="st3_rec_id")
{
$var = array($bike_id,$station,$line,$time,$date);
}
else
{
$var = array($bike_id,$station,$station,$time,$date);
}
$insert = sqlsrv_query($conn,$sql,$var);
if($insert === false)
{
die(print_r(sqlsrv_errors(),true));
}
else
{
foreach($var as $x => $a)
{
echo $x." : ".$a." ";
}
echo "<br> 1 Record Added";
}
由于该代码我收到了查询错误
数组([0] =&gt;数组([0] =&gt; 42000 [SQLSTATE] =&gt; 42000 [1] =&gt; 102 [code] =&gt; 102 [2] =&gt; [Microsoft] [SQL Server的ODBC驱动程序11] [SQL 服务器]'chs_st2_rec'附近的语法不正确。 [message] =&gt; [Microsoft] [SQL Server的ODBC驱动程序11] [SQL Server]语法不正确 靠近'chs_st2_rec'。 ))
我无法确定错误是什么以及它在哪里。
答案 0 :(得分:1)
想通了
所有这些行之前的代码错误
原因是我使用带引号的单引号
$sql = "select '$st_char'
from '$st_tab'
where bike_id like '$bike_id'";
所以我删除单引号并且它的工作
谢谢大家:)