Mysql
 sql >> база данни >  >> RDS >> Mysql

Групово вмъкване и получаване на върнати идентификатори laravel

Е, можете да получите последния идентификатор от таблицата.. След това след вмъкването добавете последния идентификатор към броя на вашия масив.. Но ще се сблъскате с проблем и това е, ако имате 2 или повече потребители, вмъкнали някои записи в тази таблица в същото време .. така че можете да използвате Транзакцията

 try{
    DB::beginTransaction();

   // 1- get the last id of your table ($lastIdBeforeInsertion)

   // 2- insert your data
    Model::insert($array);

  // 3- Getting the last inserted ids
  $insertedIds = [];
  for($i=1; $i<=theCountOfTheArray; $i++)
     array_push($insertedIds, $lastIdBeforeInsertion+$i);

});

    DB::commit();
}catch(\Exception $e){
    DB::rollback();
}

или

DB::transaction(function() {

   // 1- get the last id of your table ($lastIdBeforeInsertion)

   // 2- insert your data
   Model::insert($array);

  // 3- Getting the last inserted ids
  $insertedIds = [];
  for($i=1; $i<=theCountOfTheArray; $i++)
     array_push($insertedIds, $lastIdBeforeInsertion+$i);

});

Документация за транзакции в базата данни

Много полезна статия за транзакциите в базата данни

Редактиране

Можете да направите уникална колона и да я извикате за пример unique_bulk_id .. Това ще съдържа произволно генериран низ за вмъкнатите данни .. след вмъкването можете да получите вмъкнатите данни чрез Този unique_bulk_id .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да генерирам уникален идентификатор в MySQL?

  2. Има ли начин да наблюдавате база данни на mysql за промени с помощта на perl?

  3. Пребройте броя на уникалните стойности

  4. Липсва първия ред данни от MYSQL

  5. mysql_fetch_array пропуска първия ред