Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Laravel - Làm thế nào để tạo đúng cách các sên độc đáo từ tiêu đề bài viết?

lastInsertId trả về id của mỗi kết nối, có nghĩa là các kết nối sql đồng thời sẽ không gây trở ngại cho nhau.

Tuy nhiên, lastInsertId () có lẽ không phải là cách tiếp cận tốt nhất cho bất cứ điều gì bạn đang làm. Tôi thấy bạn đã sử dụng mô hình Eloquent. Khi tạo một mục mới trong bảng, các mô hình đó trả về đối tượng tương ứng và sau đó bạn có thể nhận được id của chính xác đối tượng đó mà không có bất kỳ sự nhầm lẫn nào.

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

Điều này sẽ luôn xuất ra id bài viết chính xác và bạn không phải lo lắng về các chi tiết triển khai. Tôi không thể thấy lý do chính đáng để sử dụng lastInsertId trong một khuôn khổ web hiện đại, ngoại trừ có thể đối với một số trường hợp rất ít.

Theo nguyên tắc chung, hãy cố gắng tránh giao dịch trực tiếp với cơ sở dữ liệu trong ứng dụng của bạn và sử dụng các phần trừu tượng mà khung cung cấp - nó sẽ làm cho mã của bạn dễ bảo trì hơn và dễ hiểu hơn nhiều.

P.S. điều đó có thể không quan trọng đối với bạn, nhưng lastInsertId () không hoạt động với các giao dịch.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xử lý múi giờ chính xác với TYPO3 và Fluid

  2. Cách thay đổi mật khẩu gốc mysql

  3. Làm cách nào để thiết kế Bảng MySql cho Đám mây thẻ?

  4. Làm cách nào để hiển thị nhiều cột xếp chồng cho mỗi phạm vi ngày trong một Thanh xếp chồng

  5. Cách nhập tệp XML vào bảng cơ sở dữ liệu MySQL bằng cách sử dụng XML_LOAD (); hàm số