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

Laravel - Как правилно да генерирате уникални охлюви от заглавия на статии?

lastInsertId връща id на връзка, което означава, че едновременните sql връзки няма да си пречат една на друга.

Въпреки това lastInsertId() вероятно не е най-добрият подход за това, което правите. Виждам, че вече използвате модели на Eloquent. Когато създавате нов запис в таблицата, тези модели връщат съответния обект и след това можете да получите идентификатор на точно този обект без никакво объркване.

$article = Article::create(['title' => 'First post', 'content' => '...']);
echo $article->id;

Това винаги ще извежда правилния идентификатор на статия и не е нужно да се притеснявате за подробностите за изпълнението. Не виждам добра причина да използвам lastInsertId в модерна уеб рамка, освен може би за много малко крайни случаи.

Като общо правило, опитайте се да избягвате да работите директно с база данни във вашето приложение и използвайте абстракциите, които предоставя рамката - това ще направи вашия код много по-лесен за поддръжка и по-прост за разбиране.

P.S. това може да не е важно за вас, но lastInsertId() не работи с транзакции.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. UTF-8 докрай

  2. mysql -> вмъкване в tbl (изберете от друга таблица) и някои стойности по подразбиране

  3. Генериране и четене на баркод

  4. mysql подреждане по проблем

  5. Вмъкване на първичен ключ за автоматично увеличение в съществуващата таблица