【问题标题】:Moving data from one mysql table to another将数据从一个mysql表移动到另一个
【发布时间】:2013-10-18 06:32:51
【问题描述】:

将数据从一个表移动到另一个表时出现查询错误:键“PRIMARY”的重复条目“0” 我不关心复制主键我希望每个表都有自己的主键 - 该表将只保存要处理的数据,由他们移动到包含所有已处理数据的最终表的人进行检查和发布。

    <basefont face="Arial">
    <title>QA-1160 Search</title>
    </head>

    <body>
          <?php

    // include the page Header

    include('header.php');

    ?>

    <?php

    //retrieve session data
    echo $_SESSION['mnumber'];
    echo "<P>";
    $mnumber=$_SESSION['mnumber'];
    $amnumber=$mnumber;  
    $mnumber=" '".$mnumber."' ";

    // set database server access variables:

    $host = "localhost";

    $user = "test";

    $pass = "test";

    $db = "test";

    // open connection

    $connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");

    // select database

    mysql_select_db($db) or die ("Unable to select database :)!");

    // create query

    $query = "insert into testingqa1160 (material, test, sample, frequency, stp,    rtr, notes, usl,    lsl) SELECT material, test, sample, frequency,  stp,    rtr, notes, usl,    lsl FROM qa1160 WHERE material=";
    $query=$query.$mnumber;
    // execute query

    $result = mysql_query($query) or die ("Error in query: $query. ".mysql_error());


    // mysql_free_result($result);

    // close connection

    mysql_close($connection);
    // clear session
    session_unset();
    session_destroy();
    // load test data

    // open connection

    $connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");

    // select database

    mysql_select_db($db) or die ("Unable to select database :)!");

    // create query


    $query = "SELECT * FROM testingqa1160";
    // $query=$query.$mnumber;
    // execute query

    $result = mysql_query($query) or die ("Error in query: $query. ".mysql_error());

    // see if any rows were returned

    if (mysql_num_rows($result) > 0) {

        // yes

        // print them one after another

        echo "<center><table cellpadding=5 border=1>";
           echo "<tr>";
            echo "<center>";
            echo "<td>"."ID"."</td>";
            echo "<td>"."Material"."</td>";
            echo "<td>"."Test"."</td>";
            echo "<td>"."Sample"."</td>";
            echo "<td>"."Frequency"."</td>";
            echo "<td>"."STP"."</td>";
            echo "<td>"."Release"."</td>";
            echo "<td>"."Notes"."</td>";
            echo "<td>"."LSL"."</td>";
            echo "<td>"."USL"."</td>";
            echo "</center></tr>";

        while($row = mysql_fetch_row($result)) {

            echo "<tr>";

            echo "<td>".$row[0]."</td>";
            echo "<td>".$row[1]."</td>";
            echo "<td>".$row[2]."</td>";
            echo "<td>".$row[3]."</td>";
            echo "<td>".$row[4]."</td>";
            echo "<td>".$row[5]."</td>";
            echo "<td>".$row[6]."</td>";
            echo "<td>".$row[7]."</td>";
            echo "<td>".$row[9]."</td>";
            echo "<td>".$row[8]."</td>";
            echo "</tr>";

        }

        echo "</table></center>";


    echo "</center>";
    }

    else {

        // no

        // print status message
    echo "<center><FONT SIZE=18>";
    echo $_GET["mnumber"];
        echo "   Materail is not found! </font>";
        echo "</center>";

    }

    // free result set memory

    mysql_free_result($result);

    // close connection

    mysql_close($connection);
    ?>
    <td><a href="/reviewtesting.php">Testing</a></td>
          <?php

    // include the page footer

    include('footer.php');

    ?>
    </body>

    </html>

【问题讨论】:

  • id 列是否有自增属性?

标签: php mysql


【解决方案1】:

1.- 不要使用 mysql_* 函数,它们已被弃用,使用 mysqliPDO

2.- 您的表 testingqa1160 需要将 auto-increment 属性添加到 id

【讨论】:

  • 你能解释一下不要使用 mysql_* 函数,它们已被弃用,使用 mysqli 或 PDO - 不使用 mysql_* 函数的好处 mysqli 语法是什么样的?感谢您的自动增量,我完全错过了。
  • 好的,谢谢,我不知道 - 新手,我只是双脚跳了进去。
猜你喜欢
  • 1970-01-01
  • 2012-04-07
  • 1970-01-01
  • 2013-11-18
  • 1970-01-01
  • 2013-03-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多