Trong bảng mã
php artisan migrate
0, ký tự đơn có kích thước 3 byte, vì vậy khóa có độ dài trên php artisan migrate
1 sẽ không vượt quá 767 [3 * 255 = 765]Trong bạn đang sử dụng
php artisan migrate
2, mà chúng tôi đang sử dụng, ký tự đơn là 4 byte. Do đó, độ dài tối đa cho php artisan migrate
3 có khóa trên đó [như php artisan migrate
4] là 191Khi bạn gặp phải điều này
Migration table created successfully.
Migrating: 2014_10_12_000000_create_users_table
Illuminate\Database\QueryException : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes [SQL: alter table `users` add unique `users_email_unique`[`email`]]
Thay đổi độ dài trường email thành 191
Chạy di chuyển
Để chạy di chuyển gần đây nhất, chưa được thực hiện
php artisan migrate
Để khôi phục lần di chuyển gần đây nhất
php artisan migrate:rollback
Đặt độ dài của trường
________số 8
Viết di chuyển
Tạo một di chuyển mới
php artisan make:migration create_blogposts_table
Để điền trước quá trình di chuyển bằng mã sơ khai để tạo một bảng mới
php artisan migrate
0Để điền trước quá trình di chuyển bằng mã sơ khai sửa đổi một bảng hiện có
php artisan migrate
1Tệp di chuyển
Tệp di chuyển chứa một lớp có 2 phương thức, ________ 05 và ________ 06
Các phương thức
php artisan migrate
5 tạo bảng mới, sửa đổi bảng hiện có. Nói chung, nó chỉ định cách lược đồ cơ sở dữ liệu của bạn sẽ thay đổi kể từ bây giờ - điều này có thể bao gồm việc xóa các trường hoặc bảngPhương pháp
php artisan migrate
6 chỉ định cách hoàn nguyên các thay đổi đã thực hiện quá trình di chuyển của tôiPhương thức
php artisan migrate
5 được gọi khi bạn chạy php artisan migrate:rollback
0Phương thức
php artisan migrate
6 được gọi khi bạn chạy php artisan migrate:rollback
2Tạo một bảng mới
php artisan migrate
0Đổi tên một bảng hiện có
php artisan migrate
1Tạo cột
php artisan migrate
2Các loại cột có sẵn
Tham khảo liên kết này
Các loại cột điển hình
LệnhMô tả
php artisan migrate:rollback
3Tự động tăng số nguyên KHÔNG KÝphp artisan migrate:rollback
4VARCHAR với độ dài tùy chọnphp artisan migrate:rollback
5DẤU THỜI GIAN Nullable Cột php artisan migrate:rollback
6 và php artisan migrate:rollback
7_______78TEXT Ở đây chúng ta sẽ thảo luận về cách tạo cột varchar hoặc chuỗi trong laravel. Đặt chiều dài cột varchar. hướng dẫn di chuyển laravel
Di chuyển chuỗi Laravel
Di chuyển chuỗi Laravel [] tạo cột loại varchar mysql. bạn cũng có thể đặt độ dài của cột varchar trong quá trình di chuyển chuỗi, xem ví dụ bên dưới
php artisan migrate
9đọc thêm. Laravel kết hợp hai truy vấn
Anmol Sharma
Tôi là một kỹ sư phần mềm và có kinh nghiệm về các công nghệ phát triển web như php, Laravel, Codeigniter, javascript, jquery, bootstrap và tôi muốn chia sẻ kiến thức sâu rộng của mình qua các blog này
Lớp
php artisan migrate
06 của Laravel cung cấp một cách thao tác bảng bất khả tri với cơ sở dữ liệu. Nó hoạt động tốt với tất cả các cơ sở dữ liệu được Laravel hỗ trợ và có API thống nhất trên tất cả các hệ thống nàyTạo và xóa bảng
Để tạo một bảng cơ sở dữ liệu mới, phương pháp
php artisan migrate
07 được sử dụngphp artisan migrate
2Đối số đầu tiên được truyền cho phương thức
php artisan migrate
08 là tên của bảng và đối số thứ hai là php artisan migrate
09 sẽ nhận một đối tượng php artisan migrate
50 có thể được sử dụng để xác định bảng mớiĐể đổi tên một bảng cơ sở dữ liệu hiện có, phương pháp
php artisan migrate
51 có thể được sử dụngphp artisan migrate
0Để chỉ định kết nối nào sẽ diễn ra hoạt động lược đồ, hãy sử dụng phương thức
php artisan migrate
52php artisan migrate
5Để thả một bảng, bạn có thể sử dụng phương pháp
php artisan migrate
53php artisan migrate
1Thêm cột
Để cập nhật một bảng hiện có, chúng tôi sẽ sử dụng phương pháp
php artisan migrate
54php artisan migrate
3Trình tạo bảng chứa nhiều loại cột mà bạn có thể sử dụng khi tạo bảng của mình
CommandDescriptionphp artisan migrate
55Incrementing ID bằng cách sử dụng một "số nguyên lớn" tương đương. php artisan migrate
56BIGINT tương đương với bảngphp artisan migrate
57BLOB tương đương với bảngphp artisan migrate
58BOOLEAN tương đương với bảngphp artisan migrate
59CHAR tương đương với độ dàiphp artisan migrate
10DATE tương đương với bảngphp artisan migrate
11DATETIME tương đương với bảngphp artisan migrate
12DECIMAL tương đương với độ chính xác và tỷ lệphp artisan migrate
13DOUBLE tương đương với độ chính xác, tổng cộng 15 chữ số và 8 sau dấu thập phânphp artisan migrate
14ENUM tương đương với bảng_____LOAT___415 . php artisan migrate
17INTEGER equivalent to the tablephp artisan migrate
18LONGTEXT equivalent to the tablephp artisan migrate
19MEDIUMINT equivalent to the tablephp artisan migrate
30MEDIUMTEXT equivalent to the tablephp artisan migrate
31Adds INTEGER php artisan migrate
32 and STRING php artisan migrate
33php artisan migrate
34Same as php artisan migrate
35, except allows NULLsphp artisan migrate
36SMALLINT equivalent to the tablephp artisan migrate
37TINYINT equivalent to the tablephp artisan migrate
38Adds deleted_at column for soft deletesphp artisan migrate
39VARCHAR equivalent columnphp artisan migrate
90VARCHAR equivalent with a lengthphp artisan migrate
91TEXT equivalent to the Sử dụng Sau Trên MySQL
Nếu bạn đang sử dụng cơ sở dữ liệu MySQL, bạn có thể sử dụng phương thức
php artisan migrate:rollback
90 để chỉ định thứ tự của các cộtphp artisan migrate
9Đổi tên cột
Để đổi tên một cột, bạn có thể sử dụng phương pháp
php artisan migrate:rollback
91 trên Schema builder. Trước khi đổi tên cột, hãy nhớ thêm phần phụ thuộc php artisan migrate:rollback
92 vào tệp php artisan migrate:rollback
93 của bạnphp artisan migrate:rollback
9Ghi chú. Đổi tên loại cột
94 không được hỗ trợphp artisan migrate:rollback
thả cột
Để thả một cột, bạn có thể sử dụng phương pháp
php artisan migrate:rollback
95 trên Schema builder. Trước khi xóa một cột, hãy đảm bảo thêm phần phụ thuộc php artisan migrate:rollback
92 vào tệp php artisan migrate:rollback
93 của bạnXoá một cột khỏi bảng cơ sở dữ liệu
$table->string['email', 191];
9Xoá nhiều cột từ một bảng cơ sở dữ liệu
php artisan make:migration create_blogposts_table
0kiểm tra sự tồn tại
Kiểm tra sự tồn tại của bảng
Bạn có thể dễ dàng kiểm tra sự tồn tại của một bảng hoặc cột bằng cách sử dụng phương thức
php artisan migrate:rollback
98 và php artisan migrate:rollback
99php artisan make:migration create_blogposts_table
3Kiểm tra sự tồn tại của các cột
php artisan migrate
00Thêm chỉ mục
Trình tạo lược đồ hỗ trợ một số loại chỉ mục. Có hai cách để thêm chúng. Đầu tiên, bạn có thể xác định chúng một cách trôi chảy trên định nghĩa cột hoặc bạn có thể thêm chúng một cách riêng biệt
php artisan migrate
01Hoặc, bạn có thể chọn thêm các chỉ mục trên các dòng riêng biệt. Dưới đây là danh sách tất cả các loại chỉ mục có sẵn
LệnhMô tả$table->string['email', 191];
90Thêm khóa chính$table->string['email', 191];
91Thêm khóa tổng hợp$table->string['email', 191];
92Thêm chỉ mục duy nhất$table->string['email', 191];
93Thêm chỉ mục cơ bảnKhóa ngoại
Laravel cũng cung cấp hỗ trợ để thêm các ràng buộc khóa ngoại vào bảng của bạn
php artisan migrate
02Trong ví dụ này, chúng tôi nói rằng cột
$table->string['email', 191];
94 tham chiếu cột $table->string['email', 191];
95 trên bảng $table->string['email', 191];
96. Đảm bảo tạo cột khóa ngoại trướcBạn cũng có thể chỉ định các tùy chọn cho hành động "xóa" và "cập nhật" của ràng buộc
php artisan migrate
03Để xóa khóa ngoại, bạn có thể sử dụng phương pháp
$table->string['email', 191];
97. Một quy ước đặt tên tương tự được sử dụng cho các khóa ngoại như được sử dụng cho các chỉ mục khácphp artisan migrate
04Ghi chú. Khi tạo khóa ngoại tham chiếu đến số nguyên tăng dần, hãy nhớ luôn đặt cột khóa ngoại là
98$table->string['email', 191];
Giảm chỉ số
Để xóa một chỉ mục, bạn phải chỉ định tên của chỉ mục. Laravel mặc định gán một tên hợp lý cho các chỉ mục. Chỉ cần nối tên bảng, tên của cột trong chỉ mục và loại chỉ mục. Dưới đây là một số ví dụ