MySQL中的插入失败错误

Kev*_*vin 2 php mysql

while($row=mysql_fetch_array($result2)){    
        //return $row['ProjectID'];
        $sql="INSERT INTO `tycodashboard` (ProjectID,DesignationID,ReqcompID,IntOrgID,FinishedTimeID,ProjectStatusID,PhaseID
                ) VALUES('{$row['ProjectID']}','$pm,'$req','$initiating,'$initiating','$ftime,'$ProjectStatus,'$Phase)";
        $result=mysql_query($sql);
        if(!$result){
            if(mysql_errno() == ER_DUP_ENTRY){
                throw new Exception("INSERT FAILED.\n\nThe database already contains a Project with the Project Name \"$ldesc\", please pick another.");
            }else{
                throw new Exception("INSERT FAILED.\n\n".mysql_error());
            }
        }
        }//exits

    INSERT FAILED.

    You have an error in your SQL syntax; check the manual that 
corresponds to your MySQL server version for the 
right syntax to use near '3','2,'2','2,'2,'3)' at line 2
Run Code Online (Sandbox Code Playgroud)

Mar*_*ers 7

从错误消息中可以看到,您缺少一大堆引号:

'3','2,'2','2,'2,'3
Run Code Online (Sandbox Code Playgroud)

尝试添加缺少的引号,看看是否有帮助:

$sql="INSERT INTO `tycodashboard` (ProjectID,DesignationID,ReqcompID,IntOrgID,FinishedTimeID,ProjectStatusID,PhaseID
      ) VALUES ('{$row['ProjectID']}','$pm','$req','$initiating','$initiating','$ftime','$ProjectStatus','$Phase')";
Run Code Online (Sandbox Code Playgroud)