Dù cẩn thận đến mấy, quá trình nhập liệu vào trong các hệ quản trị cơ sở dữ liệu cũng gặp phải những sai sót. Vậy, bạn giải quyết bằng cách nào? DDL sẽ là khái niệm giúp bạn xử lý những sai sót này. Mời bạn cùng TinoHost tìm hiểu, DDL là gì?
Giới thiệu về DDL
DDL là gì?
DLL được viết tắt từ Data Definition Language, đây là một ngôn ngữ máy tính được tạo ra để sửa đổi cấu trúc của các đối tượng dữ liệu trong cơ sở dữ liệu.
Các đối tượng dữ liệu này bao gồm bảng, chỉ mục, cấu trúc,…
Các câu lệnh tương tự như ngôn ngữ lập trình để xác định cấu trúc và các lược đồ cơ sở dữ liệu.
DDL bao gồm các nút lệnh như CREATE, DROP, ALTER, RENAME, TRUNCATE. Các nút lệnh có thể được sử dụng để thêm, xóa hoặc sửa đổi các bảng trong cơ sở dữ liệu.
Lịch sử phát triển
DDL lần đầu tiên được biết đến với sự liên quan đến mô hình cơ sở dữ liệu Codasy.
Codasy được thành lập như một tập đoàn vào năm 1959 để hướng dẫn phát triển ngôn ngữ lập trình tiêu chuẩn cũng như tạo nên một số tiêu chuẩn kỹ thuật.
Năm 1969, Codasy đã xuất bản các đặc tả ngôn ngữ đầu tiên cho mô hình dữ liệu của họ. Về sau, DDL được sử dụng để chỉ một tập hợp con của SQL để khai báo bảng, cột, kiểu dữ liệu và ràng buộc.
Các nút lệnh thường dùng của DDL
CREATE
Lệnh Create là xây dựng một bảng mới, được thực hiện với cú pháp:
*CREATE TABLE [tên bảng] ([định nghĩa cột]) [tham số bảng];
Cho ví dụ: Create Table Nhân Viên (tên nhân viên, varchar);
Lưu ý
- Dấu chấm phẩy bắt buộc phải có ở cuối câu lệnh, mang ý nghĩa yêu cầu hệ thống xử lý mọi thứ trước nó. Trường hợp không sử dụng dấu chấm phẩy sẽ nhận những kết quả lỗi hoặc kết quả không chính xác.
- Kiểu dữ liệu thường được sử dụng nhất khi tạo bảng gồm chuỗi (VARCHAR hoặc CHAR), số (NUMBER hoặc INTEGER), ngày (DATE).
- Các chỉ định kiểu dữ liệu của mỗi hệ thống sẽ khác nhau.
ALTER
Alter là lệnh chỉnh sửa bảng cơ sở dữ liệu hiện có. Lệnh này có thêm cột bổ sung, có thể loại bỏ các cột dữ liệu hiện có hoặc thay đổi kiểu dữ liệu của các cột liên quan đến bảng cơ sở dữ liệu. Alter được thực hiện với cú pháp:
*Alter loại đối tượng tên đối tượng tham số
Cho ví dụ: Alter Table Nhân viên ADD/ DROP Tuổi (worker_pk);
Trong ví dụ đã thêm từ khóa là “Tuổi” vào bảng để thêm một ràng buộc và thực hiện giá trị. Ràng buộc “worker_pk” là khóa chính nằm trên bảng Nhân viên.
DROP
Drop là lệnh được sử dụng để xóa các đối tượng như bảng, chỉ mục hoặc dạng xem. Sử dụng lệnh Drop, bạn phải cẩn thận vì khi thực hiện câu lệnh sẽ không thể phục hồi lại được. Mỗi đối tượng bị hủy sẽ không có cách nào khôi phục lại được.
Drop được thực hiện với cú pháp:
*Drop loại đối tượng tên đối tượng;
Cho ví dụ: Drop Table Nhân viên
Trường hợp này bảng nhân viên sẽ bị xóa trong cơ sở dữ liệu.
TRUNCATE
Tương tự như Drop, Truncate được sử dụng để xóa nhanh tất cả bản ghi khỏi bảng, nhanh hơn nhiều so với Delete
Nếu như Drop phá hủy hoàn toàn một bảng thì Truncate vẫn giữ nguyên đầy đủ cấu trúc để có thể sử dụng lại sau này. Truncate được thực hiện với cú pháp:
*Truncate Table tên_bảng;
Cho ví dụ: Truncate Table Nhân viên;
Ví dụ này đã đánh dấu tất cả các phạm vi trong bảng nhân viên, chúng sẽ bổ trống cho đến khi sử dụng lại.
Ngoài ra, bạn có thể kham khảo thêm một số nút lệnh khác thường được sử dụng như RENAME, COMMENT.
Rename là câu lệnh được sử dụng chung với Alter Table để thay đổi tên của đối tượng.
Comment được sử dụng để thêm các nhận xét ngoài dòng và trong dòng.
Những tính năng hữu ích của DDL
- Ưu điểm lớn nhất của DDL là tính đồng nhất
- Thông qua DDL, các lược đồ cơ sở dữ liệu có thể được viết dưới dạng lệnh và được lưu trữ dễ dàng.
- DDL là một tập hợp các tiêu chuẩn để tất cả các ngôn ngữ truy vấn có cấu trúc tuân theo.
- Đơn giản và dễ viết lệnh về sau
- DDL, DML, DCL, và DQL mang lại sự đồng nhất cơ bản của tất cả các ngôn ngữ truy vấn cấu trúc hiện có.
Bạn có thể sử dụng DDL để làm gì?
Bạn có thể tạo DDL trong một tập lệnh cho các đối tượng cơ sở dữ liệu để:
- Thiết lập một hệ thống thử nghiệm, trong đó cơ sở dữ liệu hoạt động giống như hệ thống sản xuất nhưng không chứa dữ liệu,
- Giữ một bản sao nhanh về cấu trúc cơ sở dữ liệu
- Tạo mẫu cho các đối tượng mới mà bạn có thể tạo dựa trên các đối tượng hiện có. Ví dụ: Bạn tạo DDL cho bảng Khách hàng, sau đó chỉnh sửa DDL cho bảng khách hàng mới với cùng một lược đồ.
- Bạn có thể sử dụng các câu lệnh DDL để tạo lại mọi thứ về cơ sở dữ liệu ngoại trừ nội dung của nó. Bạn dùng DDL để tạo lại hoàn toàn cơ sở dữ liệu hoặc chỉ tạo một khía cạnh nhất định.
Những lưu ý về cách sử dụng DDL
- Đặt các tùy chọn chung cho việc tạo DDL: Sử dụng trang tạo DDL tùy chọn để chỉnh sửa lại các tùy chọn chung cho các tập lệnh DDL.
- Đặt tùy chọn để thêm câu lệnh SQL vào tập lệnh DDL được tạo: Sử dụng trang mẫu trong cửa sổ tùy chọn để đặt lại, thêm câu lệnh SQL vào đầu hoặc cuối tập lệnh DDL.
- Đặt tùy chọn quản lý đặc quyền: Bạn có thể cung cấp, thu hồi hay sửa đổi đặc quyền cho các đối tượng dữ liệu. Sử dụng trang Quản trị Ủy quyền để đặt lại tùy chọn cho việc tạo DDL quản lý đặc quyền.
- Tạo tập lệnh DDL bằng trình hướng dẫn: Sử dụng trình hướng dẫn để tạo DDL, xuất các đối tượng dữ liệu hoặc mô hình dữ liệu sang tập lệnh DDL
- Chỉnh sửa tập lệnh DDL: Tập lênh DDL có thể chỉnh sửa sau khi tạo.
Sự can thiệp của DDL thật sự cần thiết trong quá trình vận hành cơ sở dữ liệu, giúp bạn thêm, bớt hay loại bỏ những sai số, đưa ra một cấu trúc hoàn chỉnh. Hy vọng qua bài viết này, bạn có thể tìm hiểu và đúc kết nhiều kinh nghiệm hơn thông qua quá trình thực hành với DDL. TinoHost chúc bạn sẽ có những kết quả tuyệt vời với DDL.
Những câu hỏi thường gặp về DDL
Có nên lựa chọn các DDL giao dịch?
Ngày nay, nhiều cơ sở dữ liệu cung cấp DDL giao dịch, giúp bạn giải quyết các sự cố tức thì nhanh chóng bằng cách quay trở lại bản nâng cấp hoạt động gần đây nhất. Để đáp ứng các nhu cầu hãy chọn một cơ sở dữ liệu cung cấp DDL giao dịch. Lưu ý các ứng dụng luôn ở trạng thái trực tuyến yêu cầu một cơ sở dữ liệu không chỉ có khả năng đơn giản hóa các nâng cấp.
DDL có quan trọng đối với Hệ quản trị cơ sở dữ liệu không?
Rất quan trọng. DDL là một phần không thể thiếu trong quá trình tạo và thao tác các bảng trong hệ quản trị cơ sở dữ liệu, giúp việc khai thác dữ liệu trở nên linh hoạt hơn.
DDL có thể sử dụng trên các hệ quản trị cơ sở dữ liệu nào?
Vì là câu lệnh cơ bản trong hệ quản trị cơ sở dữ liệu nên hầu hết tất cả cơ sở dữ liệu đều sử dụng DDL.
Lệnh Truncate có gì khác so với lệnh Delete?
Tùy vào những tình huống cụ thể để bạn sử dụng Truncate hoặc Delete cho phù hợp. Trong đó, cú pháp Delete được sử dụng khá rộng rãi và phổ biến vì cho phép người dùng xác định rõ ràng bản ghi nào cần xóa, được kết hợp chung với lệnh JOINS và một vài tham số khác. Khả năng ngăn chặn có thể xảy ra khi chúng ta dùng Delete để xóa bỏ một lượng dữ liệu lớn, do vậy cần phải tuyệt đối cận thận trong quá trình thao tác. Mặt khác, lệnh Trucate sẽ giúp người quản trị xóa toàn bộ một bảng dữ liệu nào đó một cách đơn giản và nhanh chóng.