0

我正在尝试使用以下代码将两个表的内容合并为一个(sortedArrivals):我不希望插入主键 ID(此处称为 flightShed.id)。

$sql = "INSERT INTO sortedArrivals

                SELECT  flightSched.id,
                        flightSched.timePeriod, 
                        flightSched.depOrArriv, 
                        flightSched.flightNo,
                        flightSched.airline, 
                        flightSched.dest,  
                        flightSched.origin, 
                        flightSched.depature,
                        flightSched.don, 
                        flightSched.arrivalTime,
                        flightSched.status 

                FROM flightSched ";

        if (!$mysqli->query($sql))
          {
            echo $counter . "<br>" ;
            die('Error: ' . $mysqli->error);

          }

但是我想要一个递增的主键。当我尝试插入下一个表的内容时,我得到:以下错误消息:

错误:键 'PRIMARY' 的重复条目 '9'

我如何做到这一点?任何帮助表示赞赏。

4

2 回答 2

2

命名要插入的列

INSERT INTO sortedArrivals (timePeriod, depOrArriv, flightNo, airline, 
                            dest, origin, depature, don, arrivalTime, status)
SELECT timePeriod, 
       depOrArriv, 
       flightNo,
       airline, 
       dest,  
       origin, 
       depature,
       don, 
       arrivalTime,
       status     
FROM flightSched
于 2013-10-02T08:49:12.967 回答
0

我不希望插入主键 ID(此处称为 flightShed.id)。

那么不要选择它们......</p>

但是我想要一个递增的主键。

……但只是NULL在他们的位置上选择;自动索引列的 NULL 值将自动增加 ai 计数器。

于 2013-10-02T08:59:08.133 回答