Ngôn ngữ truy vấn có cấu trúc là gì

Ngôn ngữ truy vấn [tiếng Anh: Query languages] là tên gọi chung để chỉ các ngôn ngữ máy tính được dùng để tạo các truy vấn trong các cơ sở dữ liệu và các hệ thống thông tin.

Các kiểu dữ liệu trong ngôn ngữ SQL, một trong những ngôn ngữ truy vấn phổ biến nhất với các lập trình viên.

Nhìn chung, ngôn ngữ truy vấn được phân loại tùy theo việc mục đích sử dụng cho cơ sở dữ liệu hoặc để truy xuất dữ liệu trong hệ thống thông tin. Khác biệt giữa 2 loại ngôn ngữ này ở chỗ ngôn ngữ truy vấn cho cơ sở dữ liệu cung cấp cho người dùng kết quả của việc truy xuất còn ngôn ngữ truy vấn cho hệ thống thông tin sẽ tìm trong hệ thống những dữ liệu liệu chứ thông tin liên quan đến vấn đề yêu cầu.

Một số ví dụ tiêu biểu về ngôn ngữ truy vấn:

  • Attempto Controlled English[1][2] là một ngôn ngữ truy vấn, đồng thời cũng là một ngôn ngữ tự nhiên có kiểm soát [controlled natural languate].
  • AQL là ngôn ngữ truy vấn dùng cho cơ sở dữ liệu ArangoDB.[3]
  • .QL là một ngôn ngữ truy vấn hướng đối tượng dùng cho các cơ sở dữ liệu quan hệ, là ngôn ngữ kế thừa của Datalog.
  • CQL [Contextual Query Language] là một ngôn ngữ trang trọng [formal language] cho các truy vấn đại diện trong các hệ thống truy xuất thông tin như các chỉ mục trên websites hay các thư mục trong danh mục.
  • CQLF [CODYASYL Query Language, Flat] là một ngôn ngữ truy vấn cho các cơ sở dữ liệu dạng CODASYL.
  • Concept-Oriented Query Language [COQL]
  • Cypher là một ngôn ngữ truy vấn cho các đồ thị của cơ sở dữ liệu Neo4j;
  • DMX là ngôn ngữ truy vấn cho các mô hình Data Mining;
  • Datalog là ngôn ngữ truy vấn cho các cơ sở dữ liệu suy diễn [deductive databases];
  • F-logic
  • FQL
  • Gellish English
  • Gremlin
  • GraphQL là ngôn ngữ truy vấn phát triển bởi Facebook để thay thế cho REST và các kiến trúc webservice.
  • HTSQL là ngôn ngữ truy vấn dùng để chuyển đổi các HTTP queries thành SQL;
  • ISBL là ngôn ngữ truy vấn cho PRTV, một trong những hệ thống quản lí cơ sở dữ liệu quan hệ đầu tiên
  • LINQ: các mô tả truy vấn trong LinQ là cách để truy vấn dữ liệu từ các ngôn ngữ .NET
  • LDAP là một giao thức ứng dụng cho việc truy vấn và sửa đổi các dịch vụ thư mục chạy trên giao thức TCP/IP;
  • LogiQL;
  • MQL
  • MDX là ngôn ngữ truy vấn cho các cơ sở dữ liệu OLAP;
  • N1QL
  • NoSQL: NoSQL là một từ chung để chỉ các công nghệ thay thế cho kĩ thuật quản lí dữ liệu với bảng và ngôn ngữ cấu trúc [SQL], ví dụ điển hình cho NoSQL là MongoDB.[4]
  • OQL [Object Query Language] là ngôn ngữ truy vấn đối tượng;[5]
  • OCL [Object Constraint Language]
  • OttoQL, dùng cho các bảng truy vấn, kiểu dữ liệu XML và cơ sở dữ liệu.
  • OPath
  • Poliqarp Query Language là một ngôn ngữ truy vấn tìm kiếm đặc biệt được thiết kế để phân tích các đoạn văn bản chú thích, Ngôn ngữ này được dùng cho công cụ tìm kiếm Poligarp.[6][7]
  • PQL
  • QUEL là một ngôn ngữ tương tự như SQL, dùng để truy cập vào các cơ sở dữ liệu quan hệ
  • RDQL
  • ReQL là một ngôn ngữ truy vấn dùng trên RethinkDB;[8]
  • SMARTS
  • SPARQL
  • SPL là ngôn ngữ tìm kiếm cho các máy tính dữ liệu lớn, trên nền tảng Unix Pipping và SQL
  • SCL là một ngôn ngữ kiểm soát phần mềm cho truy vấn và kiểm soát các đối tượng Endevor.
  • SQL là một trong những ngôn ngữ truy vấn phổ biến nhất với các lập trình viên, sử dụng cho các cơ sở dữ liệu quan hệ[9]
  • SuprTool
  • TMQL [Topic Map Query Language] là một ngôn ngữ truy vấn cho Topic Maps
  • TQL là ngôn ngữ dùng cho các topo truy vấn[10]
  • Tutorial D là một ngôn ngữ truy vấn dùng cho các cơ sỡ liệu quan hệ quản lí hệ thống [TRDBMS: truly relational database management systems][11]
  • XQuery là một ngôn ngữ truy vấn cho các dữ liệu kiểu XML[12]
  • XPath là ngôn ngữ khai báo [declarative language] để định hướng các dữ liệu XML;
  • XSPARQL
  • YQL là một ngôn ngữ truy vấn tương tự như SQL tạo bởi Yahoo!
  • Nhóm các ngôn ngữ truy vấn cho các công cụ tìm kiếm như Google hay Bing[13]

  1. ^ “Attempto Project”. Truy cập ngày 1 tháng 8 năm 2020.
  2. ^ “Attempto Controlled English”. Truy cập ngày 1 tháng 8 năm 2020.
  3. ^ “ArangoDB v3.6.5 Documentation”. Truy cập ngày 1 tháng 8 năm 2020.
  4. ^ “No SQL Database; hostingdata.co.uk”. Truy cập ngày 1 tháng 8 năm 2020.
  5. ^ “OQL - Object Query Language; //cse.buffalo.edu/”. Truy cập ngày 1 tháng 8 năm 2020. Liên kết ngoài trong |title= [trợ giúp]
  6. ^ “Trang web chính thức của Poligarp”.
  7. ^ “Poliqarp; poliqarp.sourceforge.net”. Truy cập ngày 1 tháng 8 năm 2020.
  8. ^ “Introduction to ReQL”. Truy cập ngày 1 tháng 8 năm 2020.
  9. ^ “SQL Tutorial, w3school.com”. Truy cập ngày 1 tháng 8 năm 2020.
  10. ^ “Topology Query Language [TQL] Overview”.
  11. ^ 23 tháng 5 năm 2013.pdf “Tutorial D-ngày 23 tháng 5 năm 2013.pdf; dcs.warwick.ac.uk” Kiểm tra giá trị |url= [trợ giúp] [PDF]. Truy cập ngày 1 tháng 8 năm 2020.[liên kết hỏng]
  12. ^ “XQuery Tutorial, w3schools.com”. Truy cập ngày 1 tháng 8 năm 2020.
  13. ^ “Web search Google”. Truy cập ngày 1 tháng 8 năm 2020.

Lấy từ “//vi.wikipedia.org/w/index.php?title=Ngôn_ngữ_truy_vấn&oldid=68070136”

Ngôn ngữ truy vấn có cấu trúc [SQL] là tập các lệnh được sử dụng để tương tác với một cơ sở dữ liệu quan hệ . Trong thực tế, SQL là ngôn ngữ duy nhất mà hầu hết các cơ sở dữ liệu đều hiểu. Bất cứ khi nào bạn tương tác với một cơ sở dữ liệu như vậy, phần mềm dịch các lệnh của bạn [cho dù chúng là các lần nhấp chuột hoặc các mục nhập biểu mẫu] vào một câu lệnh SQL mà cơ sở dữ liệu biết cách diễn giải. SQL có ba thành phần chính: Ngôn ngữ thao tác dữ liệu [DML], Ngôn ngữ định nghĩa dữ liệu [DDL] và Ngôn ngữ điều khiển dữ liệu [DCL].

Sử dụng phổ biến của SQL trên Web

Là người dùng của bất kỳ chương trình phần mềm cơ sở dữ liệu nào, bạn có thể đang sử dụng SQL, ngay cả khi bạn không biết nó. Ví dụ, một trang web động cơ sở dữ liệu [giống như hầu hết các trang web] đưa người dùng nhập vào từ biểu mẫu và lần nhấp và sử dụng nó để soạn truy vấn SQL truy xuất thông tin từ cơ sở dữ liệu cần thiết để tạo trang web tiếp theo. Xem xét ví dụ về một danh mục trực tuyến đơn giản có chức năng tìm kiếm. Trang tìm kiếm có thể bao gồm biểu mẫu chỉ chứa một hộp văn bản mà bạn nhập cụm từ tìm kiếm và sau đó nhấp vào nút tìm kiếm. Khi bạn nhấp vào nút, máy chủ web sẽ truy xuất bất kỳ bản ghi nào từ cơ sở dữ liệu sản phẩm có chứa cụm từ tìm kiếm và sử dụng kết quả để tạo trang web cụ thể theo yêu cầu của bạn.

Ví dụ: nếu bạn đã tìm kiếm các sản phẩm có chứa cụm từ "Ireland", máy chủ có thể sử dụng câu lệnh SQL sau để truy xuất các sản phẩm có liên quan:

CHỌN * TỪ sản phẩm WHERE name LIKE '% irish%'

Đã dịch, lệnh này sẽ lấy bất kỳ bản ghi nào từ bảng cơ sở dữ liệu có tên "sản phẩm" chứa các ký tự "irish" ở bất kỳ đâu trong tên sản phẩm.

Ngôn ngữ thao tác dữ liệu

Ngôn ngữ thao tác dữ liệu [DML] chứa tập hợp con các lệnh SQL được sử dụng thường xuyên nhất - những lệnh đơn giản thao tác nội dung của cơ sở dữ liệu dưới dạng nào đó. Bốn lệnh DML phổ biến nhất lấy thông tin từ lệnh cơ sở dữ liệu [lệnh SELECT], thêm thông tin mới vào cơ sở dữ liệu [lệnh INSERT], sửa đổi thông tin hiện được lưu trữ trong cơ sở dữ liệu [lệnh UPDATE] và xóa thông tin khỏi cơ sở dữ liệu [ Lệnh DELETE].

Ngôn ngữ định nghĩa dữ liệu

Ngôn ngữ định nghĩa dữ liệu [DDL] chứa các lệnh ít được sử dụng hơn. Lệnh DDL sửa đổi cấu trúc thực tế của cơ sở dữ liệu, thay vì nội dung của cơ sở dữ liệu. Ví dụ về các lệnh DDL thường được sử dụng bao gồm các lệnh được sử dụng để tạo ra một bảng cơ sở dữ liệu mới [CREATE TABLE], sửa đổi cấu trúc của bảng cơ sở dữ liệu [ALTER TABLE] và xóa bảng cơ sở dữ liệu [DROP TABLE].

Ngôn ngữ kiểm soát dữ liệu

Ngôn ngữ kiểm soát dữ liệu [DCL] được sử dụng để quản lý quyền truy cập của người dùng vào cơ sở dữ liệu . Nó bao gồm hai lệnh: lệnh GRANT, được sử dụng để thêm các quyền cơ sở dữ liệu cho một người dùng và lệnh REVOKE, được sử dụng để loại bỏ các quyền hiện có. Hai lệnh này tạo thành lõi của mô hình bảo mật cơ sở dữ liệu quan hệ.

Cấu trúc của một lệnh SQL

May mắn thay cho những người không phải là lập trình viên máy tính, các lệnh SQL được thiết kế để có một cú pháp tương tự như ngôn ngữ tiếng Anh. Chúng thường bắt đầu bằng câu lệnh mô tả hành động cần thực hiện, theo sau là một mệnh đề mô tả mục tiêu của lệnh [như bảng cụ thể bên trong cơ sở dữ liệu bị ảnh hưởng bởi lệnh] và cuối cùng là một loạt các mệnh đề cung cấp các hướng dẫn bổ sung.

Thông thường, chỉ cần đọc một câu lệnh SQL to sẽ cung cấp cho bạn một ý tưởng rất tốt về những gì lệnh được dự định thực hiện. Hãy dành một chút thời gian để đọc ví dụ này của một câu lệnh SQL:

XÓA TỪ sinh viên WHERE graduation_year = 2014

Bạn có thể đoán những gì tuyên bố này sẽ làm gì? Nó truy cập vào bảng cơ sở dữ liệu của học sinh và xóa tất cả hồ sơ cho các sinh viên tốt nghiệp năm 2014.

Học lập trình SQL

Chúng ta đã xem xét một vài ví dụ SQL đơn giản trong bài viết này, nhưng SQL là một ngôn ngữ rộng và mạnh mẽ. Để có phần giới thiệu sâu hơn, hãy xem Nguyên tắc cơ bản về SQL .

Video liên quan

Chủ Đề