Nội dung chính
Như đã nói “Thay đổi” là hằng số duy nhất
Thời điểm kinh doanh thay đổi yêu cầu kinh doanh cũng thay đổi. Khi yêu cầu kinh doanh thay đổi, thiết kế cơ sở dữ liệu cũng cần thay đổi.
MySQL cung cấp chức năng “ALTER” giúp chúng ta kết hợp các thay đổi đối với thiết kế cơ sở dữ liệu hiện có .
Lệnh thay đổi được sử dụng để sửa đổi cơ sở dữ liệu, bảng dữ liệu, dạng xem hoặc các đối tượng cơ sở dữ liệu khác có thể cần thay đổi của cơ sở dữ liệu.
Giả sử rằng chúng ta đã hoàn thành thiết kế cơ sở dữ liệu của mình . Người dùng cơ sở dữ liệu của chúng ta đang sử dụng nó và sau đó họ nhận ra một số thông tin quan trọng đã bị bỏ qua trong giai đoạn thiết kế. Họ không muốn mất dữ liệu hiện tại mà chỉ muốn kết hợp thông tin mới. Chúng ta có thể sử dụng lệnh thay đổi để thay đổi kiểu dữ liệu của một trường từ chuỗi thành số, thay đổi tên trường thành tên mới hoặc thậm chí thêm một cột mới trong bảng.
Cú pháp cơ bản được sử dụng để thêm một cột vào bảng như hình bên dưới
ALTER TABLE `table_name` ADD COLUMN `column_name` `data_type`;
Ví dụ Myflix là dạng thanh toán trực tuyến. Để làm việc đó, chúng ta đã yêu cầu thêm một trường cho số thẻ tín dụng trong bảng thành viên của chúng ta. Chúng ta có thể sử dụng lệnh ALTER để thực hiện. Trước tiên chúng ta hãy xem cấu trúc của bảng thành viên trước khi chúng ta thực hiện sửa đổi. Như hình bên dưới
HOW COLUMNS FROM `members`;
Chúng ta có thể sử dụng tập lệnh hiển thị bên dưới để thêm trường mới vào bảng thành viên.
ALTER TABLE `members` ADD COLUMN `credit_card_number` VARCHAR(25);
Chạy tập lệnh thêm một cột mới có tên số thẻ tín dụng vào bảng thành viên với VARCHAR làm kiểu dữ liệu cho Myflixdb trong MySQL . Chúng ta sẽ được bảng sau
SHOW COLUMNS FROM `members`;
Như bạn có thể thấy từ kết quả trả về, số thẻ tín dụng đã được thêm vào bảng thành viên. Dữ liệu chứa trong dữ liệu của các thành viên không bị ảnh hưởng bởi việc thêm cột mới.
Lệnh DROP được sử dụng để:
Bây giờ chúng ta hãy xem các ví dụ thực tế về sử dụng lệnh DROP.
Trong ví dụ trước của chúng ta về Lệnh Alter, chúng tôi đã thêm một cột có tên số thẻ tín dụng vào bảng thành viên.
Giả sử chức năng thanh toán trực tuyến sẽ mất một chút thời gian và chúng ta muốn DROP cột thẻ tín dụng
Chúng ta có thể sử dụng đoạn script sau
ALTER TABLE `members` DROP COLUMN `credit_card_number`;
Chạy tập lệnh trên sẽ giảm cột credit_card_number khỏi bảng thành viên
Bây giờ chúng ta hãy xem các cột trong bảng thành viên để xác nhận xem cột của chúng ta đã bị hủy hay chưa.
SHOW COLUMNS FROM `members`;
Thực hiện đoạn script trên đối với myflixdb trong MySQL cho chúng ta các kết quả sau.
Lưu ý rằng số thẻ tín dụng đã bị xóa khỏi danh sách trường.
BẢNG DROP
Cú pháp để DROP một bảng từ Cơ sở dữ liệu như sau –
DROP TABLE `sample_table`;
Hãy xem một ví dụ
DROP TABLE `categories_archive`;
Việc thực hiện đoạn script trên sẽ xóa bảng có tên ` categories_archive ` khỏi cơ sở dữ liệu của chúng tôi.
Lệnh “đổi tên” được sử dụng để thay đổi tên của một đối tượng cơ sở dữ liệu có sẵn (như Bảng, Cột) thành một tên mới .
Đổi tên bảng không làm mất bảng dữ liệu trong bảng.
Cú pháp: –
Lệnh đổi tên có cú pháp cơ bản sau.
RENAME TABLE `current_table_name` TO `new_table_name`;
Giả sử rằng chúng ta muốn đổi tên bảng Movierentals thành movie_rentals, chúng ta có thể sử dụng tập lệnh hiển thị bên dưới để làm được điều đó.
RENAME TABLE `movierentals` TO `movie_rentals`;
Thực hiện đoạn script trên sẽ đổi tên bảng `Movierentals` thành` movie_rentals`.
Bây giờ chúng ta sẽ đổi tên bảng movie_rentals trở lại tên ban đầu.
RENAME TABLE `movie_rentals` TO `movierentals`;
Thay đổi từ khóa cho phép bạn:
Hãy xem xét một ví dụ. Trường tên đầy đủ trong bảng thành viên có kiểu dữ liệu varchar và có chiều rộng 150.
SHOW COLUMNS FROM `members`;
Thực hiện đoạn script chúng ta sẽ được kết quả sau.
Giả sử chúng ta muốn
Chúng ta có thể thực hiện điều này bằng cách sử dụng lệnh thay đổi như sau –
ALTER TABLE `members` CHANGE COLUMN `full_names` `fullname` char(250) NOT NULL;
Chạy tập lệnh trên đối với myflixdb trong MySQL và sau đó thực hiện tập lệnh cột hiển thị ở trên sẽ cho kết quả như sau.
Modifi keyword cho phép bạn
Trong ví dụ CHANGE ở trên, chúng ta đã phải thay đổi tên trường cũng như các chi tiết khác. Bỏ qua tên trường từ câu lệnh CHANGE sẽ tạo ra lỗi. Giả sử chúng ta chỉ cần thay đổi loại dữ liệu và các điều kiện trên trường mà không làm ảnh hưởng đến tên trường, chúng ta có thể sử dụng từ khóa MODIFY để thực hiện điều đó.
Tập lệnh bên dưới thay đổi độ rộng của trường “fullname” từ 250 thành 50.
ALTER TABLE `members`MODIFY `fullname` char(50) NOT NULL;
Chạy tập lệnh trên sẽ cho kết quả như sau.
Giả sử rằng chúng tôi muốn thêm một cột mới tại một vị trí cụ thể trong bảng.
Chúng ta có thể sử dụng lệnh AFTER thay đổi cùng với từ khóa .
ví dụ bên dưới thêm “date_of_registration” ngay sau ngày sinh trong bảng thành viên.
ALTER TABLE `members` ADD `date_of_registration` date NULL AFTER `date_of_birth`;
Chúng ta sẽ có kết quả như sau.
Hiện nay hệ thống đang có nhiều ưu đãi khi bạn đăng ký các khóa học này. Chi tiết xem tại:
Nội dung liên quan