2016-08-09 3 views
0

Я вставляю две строки из CSV в таблицу через PHP.PHP Insertion - UID больше для первой записи

Я также отслеживаю любые ошибки, и, если что-то происходит, я не совершаю транзакции. При вставке в таблицу я получаю идентификаторы полученных строк (все они были совершены за одну транзакцию), а FIRST-строка csv соответствует SECOND ID. Я также попытался добавления mysqli_commit в различных местах, по-прежнему та же самая проблема

$queryInsert = "INSERT INTO ".$table." VALUES(NULL,?,?,?,1,?)"; 
    if (!($stt= mysqli_prepare($con,$queryInsert))){ 
     die('Failed'); 
    } 

    //some arbitrary data checking 
    if ($cols[8] == 'No' || $cols[8] == 'N' || $cols[8] == '0'){ 
     $ref = 0; 
    }else{ 
     $ref = 1; 
    } 

    mysqli_stmt_bind_param($stt,"ssii",$cols[6],$cols[7],$runUID,$ref); 
    $in = mysqli_stmt_execute($stt); 
    mysqli_stmt_close($stt); 
    $uid = mysqli_insert_id($con); 
    mysqli_commit($con); 

    echo $uid; 

Если предыдущий элемент строки был 284, выход 287 и 286 (он пытался вставить 285 в последний раз, не удалось, но идентификатор недействительности так что он пытается вставить 286 и 287, но пытается вставить 287 до 286 и снова сработает). Вторая строка (с нижним идентификатором) вставлена ​​совершенно нормально, а верхняя - нет. Что происходит?

ответ

0

Проблема заключалась в том, что триггер противодействовал записи. Исправлено:

Смежные вопросы