Xây dựng Laravel database migration tốt ngay lập tức rất khó – đặc biệt là đối với người mới bắt đầu. Đó là lý do tại sao bạn thường muốn thực hiện thay đổi đối với quá trình di chuyển của mình, chỉ để phát hiện ra rằng bạn đã di chuyển cơ sở dữ liệu của mình. May mắn thay, rất dễ dàng trong Laravel để khôi phục chính xác chỉ [các] lần di chuyển cơ sở dữ liệu cuối cùng của bạn
Trước tiên, hãy kiểm tra xem chúng ta đã chạy di chuyển cơ sở dữ liệu nào. Để làm như vậy, hãy chạy lệnh di chuyển nghệ nhân php. trạng thái trên dòng lệnh [trước tiên hãy đảm bảo điều hướng đến thư mục chứa các tệp ứng dụng của bạn]. Điều này sẽ cung cấp cho bạn một đầu ra như thế này
php artisan migrate:status
+------+------------------------------------------------+-------+
| Ran? | Migration | Batch |
+------+------------------------------------------------+-------+
| Yes | 2014_10_12_000000_create_users_table | 1 |
| Yes | 2014_10_12_100000_create_password_resets_table | 1 |
| Yes | 2019_08_19_000000_create_failed_jobs_table | 1 |
+------+------------------------------------------------+-------+
`php artisan migration` của tôi báo lỗi nghiêm trọng
Đôi khi điều này xảy ra và trong hầu hết các trường hợp, nó có thể được giải quyết bằng cách chạy
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
26 trước khi thực hiện quá trình di chuyển của bạn. Ngoài ra, hãy kiểm tra cácCách khôi phục quá trình di chuyển cơ sở dữ liệu Laravel mới nhất của bạn
Để khôi phục lần di chuyển mới nhất, bạn cần có lệnh sau
php artisan migrate:rollback --step=1
Bản thân lệnh này rất đơn giản, nhưng hãy để tôi giải thích ngắn gọn
- Lệnh
27 chỉ định rằng bạn muốn sử dụng công cụ dòng lệnh tích hợp của Laravel, được gọi là Artisan. Công cụ này cho phép bạn chạy các lệnh dành riêng cho ứng dụng Laravel của mình. Nhiều khả năng bạn đã gặp phải điều này trước đây# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
- Phần có
28 là lệnh thực tế. Nó nói rằng bạn muốn khôi phục một số lần di chuyển cơ sở dữ liệu# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
- Phần cuối,
29, là tham số cho lệnh# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
28. Theo mặc định,# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
31 sẽ khôi phục tất cả các lần di chuyển cơ sở dữ liệu của bạn. Bằng cách chỉ định# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
29, bạn đang nói rằng bạn chỉ muốn khôi phục quá trình di chuyển cơ sở dữ liệu mới nhất.# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Ngoài ra, nếu bạn thay đổi số điện thoại, e. g. vào
0, bạn đang yêu cầu Laravel chỉ khôi phục hai lần di chuyển cuối cùng.php artisan migrate:rollback --step=1
Dọn dẹp sau khi khôi phục quá trình di chuyển cơ sở dữ liệu
Sau khi khôi phục quá trình di chuyển cơ sở dữ liệu, bạn nên chạy lệnh sau
composer dump-autoload
Lệnh này sẽ dọn sạch tệp tự động tải của trình soạn thảo của bạn, có thể ngăn ngừa các lỗi và sự cố trong tương lai
Di chuyển giống như kiểm soát phiên bản cho cơ sở dữ liệu của bạn, cho phép nhóm của bạn xác định và chia sẻ định nghĩa lược đồ cơ sở dữ liệu của ứng dụng. Nếu bạn đã từng phải yêu cầu đồng đội thêm một cột vào lược đồ cơ sở dữ liệu cục bộ của họ theo cách thủ công sau khi lấy các thay đổi của bạn từ kiểm soát nguồn, thì bạn đã gặp phải vấn đề mà việc di chuyển cơ sở dữ liệu giải quyết được
Mặt tiền
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
09 của Laravel cung cấp hỗ trợ cơ sở dữ liệu bất khả tri để tạo và thao tác các bảng trên tất cả các hệ thống cơ sở dữ liệu được hỗ trợ của Laravel. Thông thường, quá trình di chuyển sẽ sử dụng mặt tiền này để tạo và sửa đổi các bảng và cột cơ sở dữ liệuTạo Migration
Bạn có thể sử dụng lệnh Artisan
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
10 để tạo di chuyển cơ sở dữ liệu. Di chuyển mới sẽ được đặt trong thư mục # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
11 của bạn. Mỗi tên tệp di chuyển chứa dấu thời gian cho phép Laravel xác định thứ tự di chuyểnphp artisan make:migration create_flights_table
Laravel sẽ sử dụng tên của quá trình di chuyển để cố gắng đoán tên của bảng và liệu quá trình di chuyển có tạo ra một bảng mới hay không. Nếu Laravel có thể xác định tên bảng từ tên di chuyển, Laravel sẽ điền trước vào tệp di chuyển đã tạo với bảng đã chỉ định. Nếu không, bạn chỉ cần chỉ định bảng trong tệp di chuyển theo cách thủ công
Nếu bạn muốn chỉ định đường dẫn tùy chỉnh cho quá trình di chuyển đã tạo, bạn có thể sử dụng tùy chọn
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
12 khi thực hiện lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
10. Đường dẫn đã cho phải liên quan đến đường dẫn cơ sở của ứng dụng của bạnLưu ý
Sơ khai di chuyển có thể được tùy chỉnh bằng cách sử dụng.
Di chuyển đè bẹp
Khi bạn xây dựng ứng dụng của mình, bạn có thể tích lũy ngày càng nhiều lần di chuyển theo thời gian. Điều này có thể dẫn đến thư mục
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
11 của bạn trở nên cồng kềnh với hàng trăm lần di chuyển. Nếu muốn, bạn có thể "bóp" các lần di chuyển của mình thành một tệp SQL duy nhất. Để bắt đầu, hãy thực hiện lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
15# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Khi bạn thực hiện lệnh này, Laravel sẽ ghi một tệp "lược đồ" vào thư mục
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
16 của ứng dụng của bạn. Tên của tệp lược đồ sẽ tương ứng với kết nối cơ sở dữ liệu. Bây giờ, khi bạn cố gắng di chuyển cơ sở dữ liệu của mình và không có quá trình di chuyển nào khác được thực hiện, trước tiên Laravel sẽ thực thi các câu lệnh SQL của tệp lược đồ của kết nối cơ sở dữ liệu mà bạn đang sử dụng. Sau khi thực thi các câu lệnh của tệp lược đồ, Laravel sẽ thực hiện mọi di chuyển còn lại không phải là một phần của kết xuất lược đồNếu các thử nghiệm của ứng dụng của bạn sử dụng kết nối cơ sở dữ liệu khác với kết nối cơ sở dữ liệu bạn thường sử dụng trong quá trình phát triển cục bộ, thì bạn nên đảm bảo rằng bạn đã kết xuất tệp lược đồ bằng kết nối cơ sở dữ liệu đó để các thử nghiệm của bạn có thể xây dựng cơ sở dữ liệu của bạn. Bạn có thể muốn làm điều này sau khi kết xuất kết nối cơ sở dữ liệu mà bạn thường sử dụng trong quá trình phát triển cục bộ
php artisan migrate:rollback --step=1
4Bạn nên cam kết tệp lược đồ cơ sở dữ liệu của mình để kiểm soát nguồn để các nhà phát triển mới khác trong nhóm của bạn có thể nhanh chóng tạo cấu trúc cơ sở dữ liệu ban đầu của ứng dụng của bạn
Cảnh báo
Tính năng nén di chuyển chỉ khả dụng cho cơ sở dữ liệu MySQL, PostgreSQL và SQLite và sử dụng ứng dụng khách dòng lệnh của cơ sở dữ liệu. Kết xuất lược đồ có thể không được khôi phục vào cơ sở dữ liệu SQLite trong bộ nhớ.
Cơ cấu di cư
Một lớp di chuyển chứa hai phương thức.
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
17 và # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
18. Phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
17 được sử dụng để thêm các bảng, cột hoặc chỉ mục mới vào cơ sở dữ liệu của bạn, trong khi phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
18 sẽ đảo ngược các hoạt động được thực hiện bởi phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
17Trong cả hai phương pháp này, bạn có thể sử dụng trình tạo lược đồ Laravel để tạo và sửa đổi các bảng một cách rõ ràng. Để tìm hiểu về tất cả các phương pháp có sẵn trên trình tạo
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
09,. Ví dụ: quá trình di chuyển sau đây tạo bảng # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
23php artisan migrate:rollback --step=1
2Đặt kết nối di chuyển
Nếu quá trình di chuyển của bạn sẽ tương tác với một kết nối cơ sở dữ liệu khác với kết nối cơ sở dữ liệu mặc định của ứng dụng, thì bạn nên đặt thuộc tính
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
24 cho quá trình di chuyển của mìnhphp artisan migrate:rollback --step=1
4Di chuyển đang chạy
Để chạy tất cả các lần di chuyển chưa hoàn thành của bạn, hãy thực hiện lệnh Artisan
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
25Nếu bạn muốn xem những lần di chuyển nào đã chạy cho đến nay, bạn có thể sử dụng lệnh Artisan
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
26Nếu bạn muốn xem các câu lệnh SQL sẽ được thực thi bởi quá trình di chuyển mà không thực sự chạy chúng, bạn có thể cung cấp cờ
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
27 cho lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
25php artisan migrate:rollback --step=1
9Cô lập thực hiện Migration
Nếu bạn đang triển khai ứng dụng của mình trên nhiều máy chủ và chạy di chuyển như một phần của quy trình triển khai, bạn có thể không muốn hai máy chủ cố gắng di chuyển cơ sở dữ liệu cùng một lúc. Để tránh điều này, bạn có thể sử dụng tùy chọn
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
29 khi gọi lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
25Khi tùy chọn
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
29 được cung cấp, Laravel sẽ nhận được một khóa nguyên tử bằng cách sử dụng trình điều khiển bộ nhớ cache của ứng dụng của bạn trước khi cố gắng chạy quá trình di chuyển của bạn. Tất cả các nỗ lực khác để chạy lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
25 trong khi khóa đó được giữ sẽ không thực thi; composer dump-autoload
4Cảnh báo Để sử dụng tính năng này, ứng dụng của bạn phải đang sử dụng trình điều khiển bộ đệm ẩn
33,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
34,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
35,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
36,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
37 hoặc
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
38 làm trình điều khiển bộ đệm mặc định cho ứng dụng của bạn. Ngoài ra, tất cả các máy chủ phải giao tiếp với cùng một máy chủ bộ đệm trung tâm
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Buộc di chuyển để chạy trong sản xuất
Một số thao tác di chuyển mang tính phá hoại, có nghĩa là chúng có thể khiến bạn mất dữ liệu. Để bảo vệ bạn khỏi việc chạy các lệnh này đối với cơ sở dữ liệu sản xuất của mình, bạn sẽ được nhắc xác nhận trước khi các lệnh được thực thi. Để buộc các lệnh chạy mà không có dấu nhắc, hãy sử dụng cờ
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
39Quay lại di chuyển
Để khôi phục hoạt động di chuyển mới nhất, bạn có thể sử dụng lệnh Artisan
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
40. Lệnh này khôi phục "đợt" di chuyển cuối cùng, có thể bao gồm nhiều tệp di chuyển# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
3Bạn có thể khôi phục một số lần di chuyển hạn chế bằng cách cung cấp tùy chọn
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
41 cho lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
40. Ví dụ: lệnh sau sẽ khôi phục năm lần di chuyển cuối cùng# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
6Lệnh
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
43 sẽ khôi phục tất cả các lần di chuyển của ứng dụng của bạnQuay lại & Di chuyển bằng một lệnh duy nhất
Lệnh
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
44 sẽ khôi phục tất cả các lần di chuyển của bạn và sau đó thực hiện lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
25. Lệnh này tạo lại toàn bộ cơ sở dữ liệu của bạn một cách hiệu quả# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
0Bạn có thể quay lại và di chuyển lại một số lần di chuyển hạn chế bằng cách cung cấp tùy chọn
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
41 cho lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
47. Ví dụ: lệnh sau sẽ khôi phục và di chuyển lại năm lần di chuyển cuối cùng# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
0Bỏ tất cả các bảng và di chuyển
Lệnh
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
48 sẽ loại bỏ tất cả các bảng khỏi cơ sở dữ liệu và sau đó thực hiện lệnh # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
25# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
1Cảnh báo
Lệnh48 sẽ loại bỏ tất cả các bảng cơ sở dữ liệu bất kể tiền tố của chúng là gì. Cần thận trọng khi sử dụng lệnh này khi phát triển trên cơ sở dữ liệu được chia sẻ với các ứng dụng khác.
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Những cái bàn
Tạo bảng
Để tạo một bảng cơ sở dữ liệu mới, hãy sử dụng phương pháp
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
51 trên mặt tiền # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
09. Phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
51 chấp nhận hai đối số. cái đầu tiên là tên của bảng, trong khi cái thứ hai là một bao đóng nhận một đối tượng # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
54 có thể được sử dụng để xác định bảng mới# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
2Khi tạo bảng, bạn có thể sử dụng bất kỳ trình tạo lược đồ nào để xác định các cột của bảng
Kiểm tra sự tồn tại của bảng/cột
Bạn có thể kiểm tra sự tồn tại của một bảng hoặc cột bằng phương pháp
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
55 và # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
56# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
3Kết nối cơ sở dữ liệu & Tùy chọn bảng
Nếu bạn muốn thực hiện thao tác lược đồ trên kết nối cơ sở dữ liệu không phải là kết nối mặc định của ứng dụng của bạn, hãy sử dụng phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
57# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
4Ngoài ra, một vài thuộc tính và phương thức khác có thể được sử dụng để xác định các khía cạnh khác của việc tạo bảng. Thuộc tính
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
58 có thể được sử dụng để chỉ định công cụ lưu trữ của bảng khi sử dụng MySQL# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
5Các thuộc tính
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
59 và # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
60 có thể được sử dụng để chỉ định bộ ký tự và đối chiếu cho bảng đã tạo khi sử dụng MySQL# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
6Phương pháp
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
61 có thể được sử dụng để chỉ ra rằng bảng phải là "tạm thời". Các bảng tạm thời chỉ hiển thị với phiên cơ sở dữ liệu của kết nối hiện tại và tự động bị hủy khi đóng kết nối# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
7Nếu bạn muốn thêm một "bình luận" vào một bảng cơ sở dữ liệu, bạn có thể gọi phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
62 trên thể hiện của bảng. Nhận xét bảng hiện chỉ được hỗ trợ bởi MySQL và Postgres# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
8Cập nhật bảng
Phương pháp
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
63 trên mặt tiền # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
09 có thể được sử dụng để cập nhật các bảng hiện có. Giống như phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
51, phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
63 chấp nhận hai đối số. tên của bảng và một bao đóng nhận một phiên bản # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
54 mà bạn có thể sử dụng để thêm các cột hoặc chỉ mục vào bảng# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
9Đổi tên/xóa bảng
Để đổi tên một bảng cơ sở dữ liệu hiện có, hãy sử dụng phương pháp
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
68php artisan migrate:rollback --step=1
40Để xóa một bảng hiện có, bạn có thể sử dụng các phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
69 hoặc # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
70php artisan migrate:rollback --step=1
41Đổi tên bảng bằng khóa ngoại
Trước khi đổi tên bảng, bạn nên xác minh rằng bất kỳ ràng buộc khóa ngoại nào trên bảng đều có tên rõ ràng trong tệp di chuyển của bạn thay vì để Laravel gán tên dựa trên quy ước. Mặt khác, tên ràng buộc khóa ngoại sẽ tham chiếu đến tên bảng cũ
Cột
Tạo cột
Phương pháp
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
63 trên mặt tiền # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
09 có thể được sử dụng để cập nhật các bảng hiện có. Giống như phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
51, phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
63 chấp nhận hai đối số. tên của bảng và một bao đóng nhận một phiên bản # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
75 mà bạn có thể sử dụng để thêm các cột vào bảng# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
9Các loại cột có sẵn
Kế hoạch chi tiết của trình tạo lược đồ cung cấp nhiều phương pháp tương ứng với các loại cột khác nhau mà bạn có thể thêm vào bảng cơ sở dữ liệu của mình. Mỗi phương pháp có sẵn được liệt kê trong bảng dưới đây
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
76
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
77 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
78 [khóa chính] tăng tự độngphp artisan migrate:rollback --step=1
43# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
79
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
80 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
81php artisan migrate:rollback --step=1
44# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
82
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
83 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
84# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
85
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
86 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
87php artisan migrate:rollback --step=1
45# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
88
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
89 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
90 với độ dài cho trướcphp artisan migrate:rollback --step=1
46# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
91
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
92 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
93 [với múi giờ] với độ chính xác tùy chọn [tổng số]php artisan migrate:rollback --step=1
47# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
94
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
95 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
93 với độ chính xác tùy chọn [tổng số]php artisan migrate:rollback --step=1
48# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
97
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
Phương thức
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
98 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
99php artisan migrate:rollback --step=1
49php artisan migrate:rollback --step=1
400
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
401 tạo cột tương đương php artisan migrate:rollback --step=1
402 với độ chính xác [tổng số] và tỷ lệ [chữ số thập phân] đã chophp artisan migrate:rollback --step=1
20php artisan migrate:rollback --step=1
403
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
404 tạo một cột tương đương php artisan migrate:rollback --step=1
405 với độ chính xác [tổng số] và tỷ lệ [chữ số thập phân] đã chophp artisan migrate:rollback --step=1
21php artisan migrate:rollback --step=1
406
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
407 tạo một cột tương đương php artisan migrate:rollback --step=1
408 với các giá trị hợp lệ đã chophp artisan migrate:rollback --step=1
22php artisan migrate:rollback --step=1
409
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
410 tạo một cột tương đương php artisan migrate:rollback --step=1
411 với độ chính xác [tổng số] và tỷ lệ [chữ số thập phân] đã chophp artisan migrate:rollback --step=1
23php artisan migrate:rollback --step=1
412
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
413 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
78php artisan migrate:rollback --step=1
24php artisan migrate:rollback --step=1
415
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
416 thêm một cột tương đương php artisan migrate:rollback --step=1
417 cho một lớp mô hình nhất địnhphp artisan migrate:rollback --step=1
25php artisan migrate:rollback --step=1
418
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
419 tạo cột tương đương php artisan migrate:rollback --step=1
420php artisan migrate:rollback --step=1
26php artisan migrate:rollback --step=1
421
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
422 tạo cột tương đương php artisan migrate:rollback --step=1
423php artisan migrate:rollback --step=1
27php artisan migrate:rollback --step=1
424
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
425 tạo cột tương đương php artisan migrate:rollback --step=1
426php artisan migrate:rollback --step=1
28php artisan migrate:rollback --step=1
427
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
428 tạo cột tương đương php artisan migrate:rollback --step=1
429php artisan migrate:rollback --step=1
29php artisan migrate:rollback --step=1
430
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
431 là bí danh của phương thức # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
77. Theo mặc định, phương thức sẽ tạo một cột php artisan migrate:rollback --step=1
431; php artisan migrate:rollback --step=1
434
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
435 tạo cột tương đương php artisan migrate:rollback --step=1
436 tăng tự động làm khóa chínhphp artisan migrate:rollback --step=1
40php artisan migrate:rollback --step=1
437
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
438 tạo cột tương đương php artisan migrate:rollback --step=1
439php artisan migrate:rollback --step=1
41php artisan migrate:rollback --step=1
440
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
441 tạo cột tương đương php artisan migrate:rollback --step=1
442php artisan migrate:rollback --step=1
42php artisan migrate:rollback --step=1
443
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
444 tạo cột tương đương php artisan migrate:rollback --step=1
445php artisan migrate:rollback --step=1
446
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
447 tạo cột tương đương php artisan migrate:rollback --step=1
448php artisan migrate:rollback --step=1
43php artisan migrate:rollback --step=1
449
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
450 tạo cột tương đương php artisan migrate:rollback --step=1
451php artisan migrate:rollback --step=1
44php artisan migrate:rollback --step=1
452
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
453 tạo cột tương đương php artisan migrate:rollback --step=1
454php artisan migrate:rollback --step=1
45php artisan migrate:rollback --step=1
455
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
456 tạo một cột nhằm chứa địa chỉ MAC. Một số hệ thống cơ sở dữ liệu, chẳng hạn như PostgreSQL, có một loại cột dành riêng cho loại dữ liệu này. Các hệ thống cơ sở dữ liệu khác sẽ sử dụng một cột tương đương chuỗiphp artisan migrate:rollback --step=1
46php artisan migrate:rollback --step=1
457
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
458 tạo cột tương đương php artisan migrate:rollback --step=1
459 tăng tự động làm khóa chínhphp artisan migrate:rollback --step=1
47php artisan migrate:rollback --step=1
460
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
461 tạo cột tương đương php artisan migrate:rollback --step=1
462php artisan migrate:rollback --step=1
48php artisan migrate:rollback --step=1
463
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
464 tạo cột tương đương php artisan migrate:rollback --step=1
465php artisan migrate:rollback --step=1
49php artisan migrate:rollback --step=1
466
php artisan migrate:rollback --step=1
Phương pháp
php artisan migrate:rollback --step=1
467 là một phương pháp thuận tiện có thêm cột tương đương php artisan migrate:rollback --step=1
468 # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
78 và cột tương đương php artisan migrate:rollback --step=1
470 php artisan migrate:rollback --step=1
442Phương pháp này nhằm mục đích sử dụng khi xác định các cột cần thiết cho mối quan hệ Eloquent đa hình. Trong ví dụ sau, các cột
php artisan migrate:rollback --step=1
472 và php artisan migrate:rollback --step=1
473 sẽ được tạophp artisan migrate:rollback --step=1
90php artisan migrate:rollback --step=1
474
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
475 tạo cột tương đương php artisan migrate:rollback --step=1
476php artisan migrate:rollback --step=1
91php artisan migrate:rollback --step=1
477
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
478 tạo cột tương đương php artisan migrate:rollback --step=1
479php artisan migrate:rollback --step=1
92php artisan migrate:rollback --step=1
480
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
481 tạo cột tương đương php artisan migrate:rollback --step=1
482php artisan migrate:rollback --step=1
93php artisan migrate:rollback --step=1
483
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
484 là bí danh của phương thứcphp artisan migrate:rollback --step=1
94php artisan migrate:rollback --step=1
485
php artisan migrate:rollback --step=1
Phương pháp tương tự như phương pháp;
php artisan migrate:rollback --step=1
95php artisan migrate:rollback --step=1
486
php artisan migrate:rollback --step=1
Phương pháp tương tự như phương pháp;
php artisan migrate:rollback --step=1
96php artisan migrate:rollback --step=1
487
php artisan migrate:rollback --step=1
Phương pháp tương tự như phương pháp;
php artisan migrate:rollback --step=1
97php artisan migrate:rollback --step=1
488
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
489 tạo cột tương đương php artisan migrate:rollback --step=1
490php artisan migrate:rollback --step=1
98php artisan migrate:rollback --step=1
491
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
492 tạo cột tương đương php artisan migrate:rollback --step=1
493php artisan migrate:rollback --step=1
99php artisan migrate:rollback --step=1
494
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
495 tạo một cột tương đương php artisan migrate:rollback --step=1
496, nullable nhằm mục đích lưu trữ "nhớ tôi" hiện tạiphp artisan migrate:rollback --step=1
497
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
498 tạo một cột tương đương php artisan migrate:rollback --step=1
499 với danh sách các giá trị hợp lệ đã chocomposer dump-autoload
40php artisan migrate:rollback --step=1
200
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
201 tạo cột tương đương php artisan migrate:rollback --step=1
202 tăng tự động làm khóa chínhcomposer dump-autoload
41php artisan migrate:rollback --step=1
203
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
204 tạo cột tương đương php artisan migrate:rollback --step=1
205composer dump-autoload
42php artisan migrate:rollback --step=1
206
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
207 thêm một cột tương đương php artisan migrate:rollback --step=1
208 php artisan migrate:rollback --step=1
209 [với múi giờ] nullable với độ chính xác tùy chọn [tổng số]. Cột này nhằm lưu trữ dấu thời gian php artisan migrate:rollback --step=1
208 cần thiết cho chức năng "xóa mềm" của Eloquentcomposer dump-autoload
43php artisan migrate:rollback --step=1
211
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
212 thêm một cột tương đương php artisan migrate:rollback --step=1
208 php artisan migrate:rollback --step=1
209 có thể null với độ chính xác tùy chọn [tổng số]. Cột này nhằm lưu trữ dấu thời gian php artisan migrate:rollback --step=1
208 cần thiết cho chức năng "xóa mềm" của Eloquentcomposer dump-autoload
44php artisan migrate:rollback --step=1
216
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
217 tạo cột tương đương php artisan migrate:rollback --step=1
442 có độ dài đã chocomposer dump-autoload
45php artisan migrate:rollback --step=1
219
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
220 tạo cột tương đương php artisan migrate:rollback --step=1
221composer dump-autoload
46php artisan migrate:rollback --step=1
222
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
223 tạo cột tương đương php artisan migrate:rollback --step=1
224 [với múi giờ] với độ chính xác tùy chọn [tổng số]composer dump-autoload
47php artisan migrate:rollback --step=1
225
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
226 tạo cột tương đương php artisan migrate:rollback --step=1
224 với độ chính xác tùy chọn [tổng số]composer dump-autoload
48php artisan migrate:rollback --step=1
228
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
229 tạo cột tương đương php artisan migrate:rollback --step=1
209 [với múi giờ] với độ chính xác tùy chọn [tổng số]composer dump-autoload
49php artisan migrate:rollback --step=1
231
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
232 tạo cột tương đương php artisan migrate:rollback --step=1
209 với độ chính xác tùy chọn [tổng số]# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
30php artisan migrate:rollback --step=1
234
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
235 tạo các cột tương đương php artisan migrate:rollback --step=1
236 và php artisan migrate:rollback --step=1
237 php artisan migrate:rollback --step=1
209 [với múi giờ] với độ chính xác tùy chọn [tổng số]# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
31php artisan migrate:rollback --step=1
239
php artisan migrate:rollback --step=1
Phương pháp
php artisan migrate:rollback --step=1
240 tạo các cột tương đương php artisan migrate:rollback --step=1
236 và php artisan migrate:rollback --step=1
237 php artisan migrate:rollback --step=1
209 với độ chính xác tùy chọn [tổng số]# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
32php artisan migrate:rollback --step=1
244
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
245 tạo cột tương đương php artisan migrate:rollback --step=1
246 tăng tự động làm khóa chính# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
33php artisan migrate:rollback --step=1
247
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
248 tạo cột tương đương php artisan migrate:rollback --step=1
249# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
34php artisan migrate:rollback --step=1
250
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
251 tạo cột tương đương php artisan migrate:rollback --step=1
252# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
35php artisan migrate:rollback --step=1
253
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
254 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
78# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
36php artisan migrate:rollback --step=1
256
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
257 tạo cột tương đương php artisan migrate:rollback --step=1
258 với độ chính xác tùy chọn [tổng số] và tỷ lệ [chữ số thập phân]# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
37php artisan migrate:rollback --step=1
259
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
260 tạo cột tương đương php artisan migrate:rollback --step=1
436# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
38php artisan migrate:rollback --step=1
262
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
263 tạo cột tương đương php artisan migrate:rollback --step=1
459# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
39php artisan migrate:rollback --step=1
265
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
266 tạo cột tương đương php artisan migrate:rollback --step=1
202# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
60php artisan migrate:rollback --step=1
268
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
269 tạo cột tương đương php artisan migrate:rollback --step=1
246# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
61php artisan migrate:rollback --step=1
271
php artisan migrate:rollback --step=1
Phương pháp
php artisan migrate:rollback --step=1
272 là một phương pháp thuận tiện có thêm cột tương đương php artisan migrate:rollback --step=1
468 php artisan migrate:rollback --step=1
274 và cột tương đương php artisan migrate:rollback --step=1
470 php artisan migrate:rollback --step=1
442Phương pháp này nhằm mục đích sử dụng khi xác định các cột cần thiết cho mối quan hệ Eloquent đa hình sử dụng mã định danh ULID. Trong ví dụ sau, các cột
php artisan migrate:rollback --step=1
472 và php artisan migrate:rollback --step=1
473 sẽ được tạo# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
62php artisan migrate:rollback --step=1
279
php artisan migrate:rollback --step=1
Phương pháp
php artisan migrate:rollback --step=1
280 là một phương pháp thuận tiện có thêm cột tương đương php artisan migrate:rollback --step=1
468 php artisan migrate:rollback --step=1
282 và cột tương đương php artisan migrate:rollback --step=1
470 php artisan migrate:rollback --step=1
442Phương pháp này được thiết kế để sử dụng khi xác định các cột cần thiết cho mối quan hệ Eloquent đa hình sử dụng mã định danh UUID. Trong ví dụ sau, các cột
php artisan migrate:rollback --step=1
472 và php artisan migrate:rollback --step=1
473 sẽ được tạo# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
63php artisan migrate:rollback --step=1
287
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
288 tạo cột tương đương php artisan migrate:rollback --step=1
420php artisan migrate:rollback --step=1
290
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
291 tạo cột tương đương php artisan migrate:rollback --step=1
423php artisan migrate:rollback --step=1
293
php artisan migrate:rollback --step=1
Phương thức
php artisan migrate:rollback --step=1
294 tạo cột tương đương php artisan migrate:rollback --step=1
295# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
64Công cụ sửa đổi cột
Ngoài các loại cột được liệt kê ở trên, có một số "công cụ sửa đổi" cột mà bạn có thể sử dụng khi thêm một cột vào bảng cơ sở dữ liệu. Ví dụ: để tạo cột "nullable", bạn có thể sử dụng phương thức
php artisan migrate:rollback --step=1
296# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
65Bảng sau chứa tất cả các công cụ sửa đổi cột có sẵn. Danh sách này không bao gồm
Công cụ sửa đổi Mô tảphp artisan migrate:rollback --step=1
297Đặt cột "sau" một cột khác [MySQL]. php artisan migrate:rollback --step=1
298Đặt cột INTEGER làm tăng tự động [khóa chính]. php artisan migrate:rollback --step=1
299Chỉ định bộ ký tự cho cột [MySQL]. php artisan migrate:rollback --step=1
400Chỉ định đối chiếu cho cột [MySQL/PostgreSQL/SQL Server]. php artisan migrate:rollback --step=1
401Thêm nhận xét vào cột [MySQL/PostgreSQL]. php artisan migrate:rollback --step=1
402Chỉ định giá trị "mặc định" cho cột. php artisan migrate:rollback --step=1
403Đặt cột "đầu tiên" trong bảng [MySQL]. php artisan migrate:rollback --step=1
404Đặt giá trị bắt đầu của trường tăng tự động [MySQL/PostgreSQL]. ________ 2405 Biến cột thành "ẩn" với ________ 2406 truy vấn [MySQL]. php artisan migrate:rollback --step=1
407Cho phép chèn giá trị NULL vào cột. php artisan migrate:rollback --step=1
408Tạo cột đã tạo được lưu trữ [MySQL/PostgreSQL]. php artisan migrate:rollback --step=1
409Đặt các cột INTEGER là UNSIGNED [MySQL]. php artisan migrate:rollback --step=1
410Đặt cột DẤU THỜI GIAN để sử dụng CURRENT_TIMESTAMP làm giá trị mặc định. php artisan migrate:rollback --step=1
411Đặt cột DẤU THỜI GIAN để sử dụng CURRENT_TIMESTAMP khi bản ghi được cập nhật. php artisan migrate:rollback --step=1
412Tạo cột được tạo ảo [MySQL]. php artisan migrate:rollback --step=1
413Tạo cột nhận dạng với các tùy chọn trình tự được chỉ định [PostgreSQL]. php artisan migrate:rollback --step=1
414Xác định mức độ ưu tiên của các giá trị chuỗi so với đầu vào cho một cột nhận dạng [PostgreSQL]. php artisan migrate:rollback --step=1
415Đặt loại cột không gian thành php artisan migrate:rollback --step=1
428 - loại mặc định là php artisan migrate:rollback --step=1
417 [PostgreSQL]Biểu thức mặc định
Công cụ sửa đổi
php artisan migrate:rollback --step=1
418 chấp nhận một giá trị hoặc một thể hiện php artisan migrate:rollback --step=1
419. Sử dụng phiên bản php artisan migrate:rollback --step=1
420 sẽ ngăn Laravel gói giá trị trong dấu ngoặc kép và cho phép bạn sử dụng các chức năng cụ thể của cơ sở dữ liệu. Một tình huống mà điều này đặc biệt hữu ích là khi bạn cần gán các giá trị mặc định cho các cột JSON# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
66Cảnh báo
Hỗ trợ cho các biểu thức mặc định tùy thuộc vào trình điều khiển cơ sở dữ liệu, phiên bản cơ sở dữ liệu và loại trường của bạn. Vui lòng tham khảo tài liệu cơ sở dữ liệu của bạn. Ngoài ra, không thể kết hợp các biểu thức418 thô [sử dụng
php artisan migrate:rollback --step=1
422] với các thay đổi cột thông qua phương thức
php artisan migrate:rollback --step=1
423.
php artisan migrate:rollback --step=1
Thứ tự cột
Khi sử dụng cơ sở dữ liệu MySQL, phương pháp
php artisan migrate:rollback --step=1
424 có thể được sử dụng để thêm các cột sau một cột hiện có trong lược đồ# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
67Sửa đổi cột
điều kiện tiên quyết
Trước khi sửa đổi một cột, bạn phải cài đặt gói
php artisan migrate:rollback --step=1
425 bằng trình quản lý gói Composer. Thư viện Doctrine DBAL được sử dụng để xác định trạng thái hiện tại của cột và tạo các truy vấn SQL cần thiết để thực hiện các thay đổi được yêu cầu đối với cột của bạn# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
68Nếu bạn dự định sửa đổi các cột được tạo bằng phương pháp
php artisan migrate:rollback --step=1
232, bạn cũng phải thêm cấu hình sau vào tệp cấu hình php artisan migrate:rollback --step=1
427 của ứng dụng của mình# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
69Cảnh báo
Nếu ứng dụng của bạn đang sử dụng Microsoft SQL Server, vui lòng đảm bảo rằng bạn đã cài đặt428.
php artisan migrate:rollback --step=1
Cập nhật thuộc tính cột
Phương pháp
php artisan migrate:rollback --step=1
423 cho phép bạn sửa đổi loại và thuộc tính của các cột hiện có. Ví dụ: bạn có thể muốn tăng kích thước của cột php artisan migrate:rollback --step=1
217. Để xem phương pháp php artisan migrate:rollback --step=1
423 đang hoạt động, hãy tăng kích thước của cột php artisan migrate:rollback --step=1
432 từ 25 lên 50. Để thực hiện điều này, chúng ta chỉ cần xác định trạng thái mới của cột và sau đó gọi phương thức php artisan migrate:rollback --step=1
423# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
00Chúng tôi cũng có thể sửa đổi một cột thành nullable
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
01Cảnh báo
Có thể sửa đổi các loại cột sau.80,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
83,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
86,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
89,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
98,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
95,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
92,
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
401,
php artisan migrate:rollback --step=1
404,
php artisan migrate:rollback --step=1
438,
php artisan migrate:rollback --step=1
444,
php artisan migrate:rollback --step=1
453,
php artisan migrate:rollback --step=1
464,
php artisan migrate:rollback --step=1
204,
php artisan migrate:rollback --step=1
217,
php artisan migrate:rollback --step=1
220,
php artisan migrate:rollback --step=1
226,
php artisan migrate:rollback --step=1
251,
php artisan migrate:rollback --step=1
254,
php artisan migrate:rollback --step=1
260,
php artisan migrate:rollback --step=1
266, và
php artisan migrate:rollback --step=1
291. Để sửa đổi cột
php artisan migrate:rollback --step=1
232, hãy nhập a.
php artisan migrate:rollback --step=1
Đổi tên cột
Để đổi tên cột, bạn có thể sử dụng phương pháp
php artisan migrate:rollback --step=1
457 do trình tạo lược đồ cung cấp# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
02Đổi tên cột trên cơ sở dữ liệu kế thừa
Nếu bạn đang chạy cài đặt cơ sở dữ liệu cũ hơn một trong các bản phát hành sau, bạn nên đảm bảo rằng bạn đã cài đặt thư viện
php artisan migrate:rollback --step=1
425 thông qua trình quản lý gói Composer trước khi đổi tên cột- MySQL <
459php artisan migrate:rollback --step=1
- MariaDB <
460php artisan migrate:rollback --step=1
- SQLite <
461php artisan migrate:rollback --step=1
thả cột
Để thả một cột, bạn có thể sử dụng phương pháp
php artisan migrate:rollback --step=1
462 trên trình tạo lược đồ# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
03Bạn có thể loại bỏ nhiều cột khỏi một bảng bằng cách chuyển một mảng tên cột cho phương thức
php artisan migrate:rollback --step=1
462# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
04Bỏ cột trên cơ sở dữ liệu kế thừa
Nếu bạn đang chạy phiên bản SQLite trước
php artisan migrate:rollback --step=1
464, bạn phải cài đặt gói php artisan migrate:rollback --step=1
425 thông qua trình quản lý gói Composer trước khi có thể sử dụng phương pháp php artisan migrate:rollback --step=1
462. Việc loại bỏ hoặc sửa đổi nhiều cột trong một lần di chuyển trong khi sử dụng gói này không được hỗ trợBí danh lệnh có sẵn
Laravel cung cấp một số phương thức thuận tiện liên quan đến việc loại bỏ các loại cột phổ biến. Mỗi phương pháp này được mô tả trong bảng dưới đây
CommandDescriptionphp artisan migrate:rollback --step=1
467Thả cột php artisan migrate:rollback --step=1
468 và php artisan migrate:rollback --step=1
469. php artisan migrate:rollback --step=1
470Thả cột php artisan migrate:rollback --step=1
471. php artisan migrate:rollback --step=1
472Thả cột php artisan migrate:rollback --step=1
208. php artisan migrate:rollback --step=1
474Bí danh của phương thức php artisan migrate:rollback --step=1
475. php artisan migrate:rollback --step=1
476Thả cột php artisan migrate:rollback --step=1
236 và php artisan migrate:rollback --step=1
237. php artisan migrate:rollback --step=1
479Bí danh của phương thức php artisan migrate:rollback --step=1
480chỉ mục
Tạo chỉ mục
Trình tạo lược đồ Laravel hỗ trợ một số loại chỉ mục. Ví dụ sau tạo một cột
php artisan migrate:rollback --step=1
481 mới và chỉ định rằng các giá trị của nó phải là duy nhất. Để tạo chỉ mục, chúng ta có thể xâu chuỗi phương thức php artisan migrate:rollback --step=1
482 vào định nghĩa cột# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
05Ngoài ra, bạn có thể tạo chỉ mục sau khi xác định cột. Để làm như vậy, bạn nên gọi phương thức
php artisan migrate:rollback --step=1
482 trên bản thiết kế trình tạo lược đồ. Phương thức này chấp nhận tên của cột sẽ nhận được một chỉ mục duy nhấtBạn thậm chí có thể chuyển một mảng các cột tới một phương thức chỉ mục để tạo chỉ mục tổng hợp [hoặc tổng hợp]
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
06Khi tạo chỉ mục, Laravel sẽ tự động tạo tên chỉ mục dựa trên bảng, tên cột và loại chỉ mục, nhưng bạn có thể truyền đối số thứ hai cho phương thức để tự chỉ định tên chỉ mục
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
07Các loại chỉ mục có sẵn
Lớp kế hoạch xây dựng lược đồ của Laravel cung cấp các phương thức để tạo từng loại chỉ mục được hỗ trợ bởi Laravel. Mỗi phương thức chỉ mục chấp nhận một đối số thứ hai tùy chọn để chỉ định tên của chỉ mục. Nếu bỏ qua, tên sẽ được lấy từ tên của bảng và [các] cột được sử dụng cho chỉ mục, cũng như loại chỉ mục. Mỗi phương pháp lập chỉ mục có sẵn được mô tả trong bảng bên dưới
LệnhMô tảphp artisan migrate:rollback --step=1
484Thêm khóa chính. php artisan migrate:rollback --step=1
485Thêm phím tổng hợp. php artisan migrate:rollback --step=1
486Thêm một chỉ mục duy nhất. php artisan migrate:rollback --step=1
487Thêm một chỉ mục. php artisan migrate:rollback --step=1
488Thêm chỉ mục toàn văn [MySQL/PostgreSQL]. php artisan migrate:rollback --step=1
489Thêm chỉ mục toàn văn của ngôn ngữ đã chỉ định [PostgreSQL]. php artisan migrate:rollback --step=1
490Thêm chỉ mục không gian [ngoại trừ SQLite]Độ dài chỉ mục & MySQL/MariaDB
Theo mặc định, Laravel sử dụng bộ ký tự
php artisan migrate:rollback --step=1
491. Nếu bạn đang chạy phiên bản MySQL cũ hơn 5. 7. 7 hoặc MariaDB cũ hơn 10. 2. 2, bạn có thể cần định cấu hình thủ công độ dài chuỗi mặc định được tạo bởi quá trình di chuyển để MySQL tạo chỉ mục cho chúng. Bạn có thể định cấu hình độ dài chuỗi mặc định bằng cách gọi phương thức php artisan migrate:rollback --step=1
492 trong phương thức php artisan migrate:rollback --step=1
493 của lớp php artisan migrate:rollback --step=1
494 của bạn# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
08Ngoài ra, bạn có thể bật tùy chọn
php artisan migrate:rollback --step=1
495 cho cơ sở dữ liệu của mình. Tham khảo tài liệu về cơ sở dữ liệu của bạn để biết hướng dẫn về cách bật tùy chọn này đúng cáchĐổi tên chỉ mục
Để đổi tên một chỉ mục, bạn có thể sử dụng phương pháp
php artisan migrate:rollback --step=1
496 được cung cấp bởi kế hoạch chi tiết của trình tạo lược đồ. Phương thức này chấp nhận tên chỉ mục hiện tại làm đối số đầu tiên và tên mong muốn làm đối số thứ hai# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
09Cảnh báo
Nếu ứng dụng của bạn đang sử dụng cơ sở dữ liệu SQLite, bạn phải cài đặt gói425 thông qua trình quản lý gói Composer trước khi có thể sử dụng phương pháp
php artisan migrate:rollback --step=1
496.
php artisan migrate:rollback --step=1
Giảm chỉ số
Để loại bỏ một chỉ mục, bạn phải chỉ định tên của chỉ mục. Theo mặc định, Laravel tự động gán tên chỉ mục dựa trên tên bảng, tên cột được lập chỉ mục và loại chỉ mục. Dưới đây là một số ví dụ
CommandDescriptionphp artisan migrate:rollback --step=1
499Xóa khóa chính khỏi bảng "người dùng". php artisan migrate:rollback --step=1
900Xóa một chỉ mục duy nhất khỏi bảng "người dùng". php artisan migrate:rollback --step=1
901Xóa chỉ mục cơ bản khỏi bảng "geo". php artisan migrate:rollback --step=1
902Xóa chỉ mục toàn văn từ bảng "bài đăng". php artisan migrate:rollback --step=1
903Xóa chỉ mục không gian khỏi bảng "geo" [ngoại trừ SQLite]Nếu bạn chuyển một mảng các cột vào một phương thức bỏ chỉ mục, tên chỉ mục thông thường sẽ được tạo dựa trên tên bảng, cột và loại chỉ mục
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
00Ràng buộc khóa ngoại
Laravel cũng cung cấp hỗ trợ để tạo các ràng buộc khóa ngoại, được sử dụng để buộc tính toàn vẹn tham chiếu ở cấp cơ sở dữ liệu. Ví dụ: hãy xác định cột
php artisan migrate:rollback --step=1
904 trên bảng php artisan migrate:rollback --step=1
905 tham chiếu cột php artisan migrate:rollback --step=1
431 trên bảng php artisan migrate:rollback --step=1
907# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
01Vì cú pháp này khá dài dòng, Laravel cung cấp các phương thức bổ sung, ngắn gọn hơn sử dụng các quy ước để mang lại trải nghiệm tốt hơn cho nhà phát triển. Khi sử dụng phương pháp
php artisan migrate:rollback --step=1
413 để tạo cột của bạn, ví dụ trên có thể được viết lại như vậy# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
02Phương thức
php artisan migrate:rollback --step=1
413 tạo cột tương đương # Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
78, trong khi phương thức php artisan migrate:rollback --step=1
911 sẽ sử dụng các quy ước để xác định tên bảng và cột được tham chiếu. Nếu tên bảng của bạn không khớp với quy ước của Laravel, bạn có thể chỉ định tên bảng bằng cách chuyển nó làm đối số cho phương thức php artisan migrate:rollback --step=1
911# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
03Bạn cũng có thể chỉ định hành động mong muốn cho các thuộc tính "khi xóa" và "khi cập nhật" của ràng buộc
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
04Một cú pháp thay thế, biểu cảm cũng được cung cấp cho những hành động này
Phương pháp Mô tảphp artisan migrate:rollback --step=1
913Các bản cập nhật nên xếp tầng. php artisan migrate:rollback --step=1
914Các bản cập nhật nên bị hạn chế. php artisan migrate:rollback --step=1
915Xóa nên xếp tầng. php artisan migrate:rollback --step=1
916Việc xóa nên bị hạn chế. php artisan migrate:rollback --step=1
917Deletes nên đặt giá trị khóa ngoại thành nullMọi bổ sung phải được gọi trước phương thức
php artisan migrate:rollback --step=1
911# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
04Đánh rơi khóa ngoại
Để xóa khóa ngoại, bạn có thể sử dụng phương thức
php artisan migrate:rollback --step=1
919, chuyển tên của ràng buộc khóa ngoại cần xóa làm đối số. Các ràng buộc khóa ngoại sử dụng quy ước đặt tên giống như các chỉ mục. Nói cách khác, tên ràng buộc khóa ngoại dựa trên tên của bảng và các cột trong ràng buộc, theo sau là hậu tố "_foreign"# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
06Ngoài ra, bạn có thể chuyển một mảng chứa tên cột chứa khóa ngoại cho phương thức
php artisan migrate:rollback --step=1
919. Mảng sẽ được chuyển đổi thành tên ràng buộc khóa ngoài bằng cách sử dụng quy ước đặt tên ràng buộc của Laravel# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
07Chuyển đổi các ràng buộc khóa ngoại
Bạn có thể bật hoặc tắt các ràng buộc khóa ngoại trong quá trình di chuyển của mình bằng cách sử dụng các phương pháp sau
# Dump the current database schema and prune all existing migrations...
php artisan schema:dump --prune
08Cảnh báo
SQLite tắt các ràng buộc khóa ngoại theo mặc định. Khi sử dụng SQLite, hãy đảm bảo cấu hình cơ sở dữ liệu của bạn trước khi thử tạo chúng trong quá trình di chuyển của bạn. Ngoài ra, SQLite chỉ hỗ trợ khóa ngoại khi tạo bảng chứ không hỗ trợ khi bảng bị thay đổi.
Sự kiện
Để thuận tiện, mỗi thao tác di chuyển sẽ gửi một sự kiện. Tất cả các sự kiện sau mở rộng lớp cơ sở
php artisan migrate:rollback --step=1
921