数据库错误代码1146 - 本地与在线

时间:2012-06-15 14:51:45

标签: php sql database localhost

我是这个网站的新手 - 请温柔地说:P

localhost上的mySQL数据库适用于insert语句,但是一旦我将数据库连接更改为服务器连接,它就会给出错误:错误代码1146:1146,没有任何错误描述。可能是什么原因?

根据我的错误捕获逻辑,连接成功一直到查询运行的部分。在本地版本上,它就像一个魅力。任何想法?

::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::

if($errors == 0)
        {
            $DBConnect = @mysql_connect("db.start.ca", "nokeekwe", "classifiedlol");
            if($DBConnect === FALSE)
            {
                echo "<p>Unable to connect. " .
                "Error code " . mysql_errno() . ": " .
                mysql_error() . "</p>\n";
                $errors++;
            }
            else
            {
                $DBName = "nokeekwe";
                $result = @mysql_select_db($DBName, $DBConnect);
                if($result === FALSE)
                {
                    echo "<p>Unable to select DB. " .
                    "Error code " . mysql_errno($DBConnect) .
                    ": " . mysql_error($DBConnect) .
                    "</p>\n";
                    $errors++;
                }
            }
        }

        if($errors > 0)
        {
            echo "<p>Please use your browser's BACK button" .
            " to  return to the form and fix your errors.</p>\n";
        }


        if($errors == 0)
        {

            $title = stripslashes($_POST['title']);
            $desc = stripslashes($_POST['desc']);
            $req = stripslashes($_POST['req']);
            $employer = stripslashes($_POST['employer']);
            $phone = stripslashes($_POST['phone']);
            $fax = stripslashes($_POST['fax']);
            $email = stripslashes($_POST['email']);
            $address = stripslashes($_POST['address']);
            $insertJob = "INSERT INTO tbljobs (jobTitle, jobDesc, jobReq, jobEmployer, jobPhone, jobFax, jobEmail, jobAddress) VALUES ('$title', '$desc', '$req', '$employer', '$phone', '$fax', '$email', '$address')";
                $QueryResult = mysql_query($insertJob, $DBConnect); // Run the Query Now woohoo.
                if($QueryResult === FALSE)
                {
                    echo "<p>Unable to save your job. " .
                    " Error code " .
                    mysql_errno($DBConnect) . ": " .
                    mysql_errno($DBConnect) . "</p>\n";

                    //echo $insertJob;


                    $errors++;
                }
else
{
            echo "Job Lead Saved!";}
            mysql_close($DBConnect);
        }

非常感谢

3 个答案:

答案 0 :(得分:2)

错误1146表示您尝试访问不存在的表。

http://dev.mysql.com/doc/refman/5.0/en/error-messages-server.html

确保您的本地和服务器系统上的数据库结构相同。

答案 1 :(得分:2)

  

错误:1146 SQLSTATE:42S02(ER_NO_SUCH_TABLE)

     

消息:表&#39;%s。%s&#39;不存在

     

http://dev.mysql.com/doc/refman/5.0/en/error-messages-server.html

好像你还没有设置数据库表。

答案 2 :(得分:0)

您已将连接信息从本地数据库服务器更改为联机,但实际上是否已将本地数据库表移动到在线服务器上?

1146表示该表不存在。