Máy vi tínhPhần mềm

Cách soạn các truy vấn SQL - ví dụ chi tiết

Mỗi người trong chúng ta thường xuyên va chạm và sử dụng các cơ sở dữ liệu khác nhau. Khi chúng tôi chọn một địa chỉ email, chúng tôi làm việc với cơ sở dữ liệu. Cơ sở dữ liệu sử dụng dịch vụ tìm kiếm, ngân hàng để lưu trữ dữ liệu khách hàng, v.v ...

Tuy nhiên, mặc dù sử dụng cơ sở dữ liệu liên tục, ngay cả đối với nhiều nhà phát triển hệ thống phần mềm, có rất nhiều "đốm trắng" do sự giải thích khác nhau của các điều khoản tương tự. Chúng ta sẽ đưa ra một định nghĩa ngắn gọn về các điều khoản cơ sở dữ liệu chính trước khi kiểm tra ngôn ngữ SQL. Và như vậy.

Cơ sở dữ liệu - một tập tin hoặc tập hợp các tập tin để lưu trữ các cấu trúc dữ liệu có trật tự và các mối quan hệ tương hỗ của chúng. Rất thường một cơ sở dữ liệu được gọi là một hệ thống quản lý cơ sở dữ liệu (DBMS). Cơ sở dữ liệu chỉ là một kho lưu trữ thông tin ở một định dạng nhất định và có thể làm việc với các DBMS khác nhau.

Bảng - hãy tưởng tượng một thư mục trong đó các tài liệu được lưu trữ, được nhóm lại theo một tính năng nhất định, ví dụ như danh sách đơn đặt hàng cho tháng trước. Đây là bảng trong cơ sở dữ liệu máy tính . Một bảng riêng biệt có một tên duy nhất.

Kiểu dữ liệu - loại thông tin có thể được lưu trữ trong một cột hoặc hàng riêng biệt. Nó có thể là số hoặc văn bản của một định dạng nhất định.

Cột và chuỗi - tất cả chúng ta làm việc với bảng tính, cũng chứa các hàng và cột. Bất kỳ cơ sở dữ liệu quan hệ nào làm việc với các bảng theo cách tương tự. Các hàng đôi khi được gọi là hồ sơ.

Khóa chính - mỗi hàng của bảng có thể có một hoặc nhiều cột để nhận dạng duy nhất của nó. Nếu không có khóa chính, rất khó để cập nhật, sửa đổi hoặc xóa các hàng yêu cầu.

SQL là gì?

Ngôn ngữ truy vấn SQL (English Structured Query Language) được phát triển chỉ để làm việc với cơ sở dữ liệu và hiện tại là tiêu chuẩn cho tất cả các DBMS phổ biến. Cú pháp của ngôn ngữ bao gồm một số lượng nhỏ các toán tử và dễ học. Tuy nhiên, bất chấp sự đơn giản bên ngoài, nó cho phép tạo các truy vấn sql cho các hoạt động phức tạp với các cơ sở dữ liệu có kích thước bất kỳ.

Từ năm 1992, có một tiêu chuẩn được chấp nhận rộng rãi, được gọi là ANSI SQL. Nó xác định cú pháp cơ bản và chức năng của các nhà khai thác và được hỗ trợ bởi tất cả các nhà lãnh đạo của thị trường cơ sở dữ liệu, chẳng hạn như ORACLE Microsoft SQL Server. Không thể xem xét tất cả các tính năng của ngôn ngữ trong một bài viết nhỏ, vì vậy chúng tôi sẽ chỉ xem xét ngắn gọn các truy vấn SQL cơ bản. Ví dụ minh họa sự đơn giản và khả năng của ngôn ngữ:

  • Xây dựng cơ sở dữ liệu và bảng biểu;
  • Lấy mẫu dữ liệu;
  • Thêm hồ sơ;
  • Sửa đổi và xóa thông tin.

Các loại dữ liệu SQL

Tất cả các cột trong bảng cơ sở dữ liệu lưu trữ một kiểu dữ liệu. Các kiểu dữ liệu trong SQL cũng tương tự như các ngôn ngữ lập trình khác.

Loại dữ liệu Mô tả
INT Số nguyên
REAL Số điểm nổi
TEXT Chuỗi ký tự có độ dài thay đổi
DATE Sql truy vấn "ngày" trong các định dạng khác nhau
TIME Thời gian
CHAR Dây văn bản có chiều dài cố định

Tạo bảng và cơ sở dữ liệu

Bạn có thể tạo các cơ sở dữ liệu, bảng biểu và các truy vấn khác trong SQL theo hai cách:

  • Câu lệnh SQL thông qua giao diện điều khiển DBMS
  • Sử dụng các công cụ quản trị tương tác là một phần của máy chủ cơ sở dữ liệu.

Tạo ra một cơ sở dữ liệu mới với câu lệnh CREATE DATABASE ; . Như bạn thấy, cú pháp đơn giản và súc tích.

Các bảng trong cơ sở dữ liệu được tạo ra bởi câu lệnh CREATE TABLE với các tham số sau:

  • Tên bảng
  • Tên cột và kiểu dữ liệu

Ví dụ, tạo một bảng Commodity với các cột sau:

Cột Mô tả
Commodity_id ID Sản phẩm
Người bán hàng ID nhà cung cấp (bảng bên ngoài nhà cung cấp)
Commodity_name Tên sản phẩm
Commodity_price Chi phí
Commodity_desc Mô tả

Tạo bảng:

CREATE TABLE COMMODITY

(Commodity_id CHAR (15) KHÔNG NULL,

Vendor_id CHAR (15) KHÔNG NULL,

Commodity_name CHAR (254) NULL,

Commodity_price DECIMAL (8,2) NULL,

Commodity_desc VARCHAR (1000) NULL);

Bảng bao gồm năm cột. Sau tên là một loại dữ liệu, các cột được phân cách bằng dấu phẩy. Giá trị của cột có thể là Null hoặc phải được điền (NOT NULL), và điều này được xác định khi bảng được tạo ra.

Chọn dữ liệu từ một bảng

Toán tử lấy dữ liệu là truy vấn SQL được sử dụng phổ biến nhất. Để có được thông tin, bạn cần chỉ định những gì chúng ta muốn chọn từ một bảng như vậy. Đầu tiên là một ví dụ đơn giản:

SELECT commodity_name T FROM HÀNG HÓA

Sau câu lệnh SELECT, chúng ta chỉ định tên của cột để lấy thông tin, và FROM xác định bảng.

Kết quả của việc thực hiện truy vấn sẽ là tất cả các hàng của bảng với các giá trị của Commodity_name theo thứ tự chúng được nhập vào cơ sở dữ liệu tức là Không có bất kỳ phân loại. Để sắp xếp kết quả, sử dụng mệnh đề ORDER BY tùy chọn.

Để truy vấn nhiều trường, chúng tôi liệt kê chúng bằng dấu phẩy, như trong ví dụ sau:

SELECT commodity_id, commodity_name, commodity_price FROM Commodity

Có thể lấy giá trị của tất cả các cột của chuỗi như là một kết quả của truy vấn. Để làm điều này, sử dụng dấu "*":

SELECT * FROM Hàng hóa

  • Ngoài ra, SELECT hỗ trợ:
  • Sắp xếp dữ liệu (Mệnh đề ORDER BY)
  • Lựa chọn theo điều kiện (WHERE)
  • Thuật ngữ nhóm (GROUP BY)

Thêm một hàng

Để thêm một hàng vào bảng, sử dụng truy vấn SQL với câu lệnh INSERT. Thêm có thể được thực hiện theo ba cách:

  • Thêm một dòng hoàn toàn mới;
  • Một phần của đường dây;
  • Kết quả truy vấn.

Để thêm một dòng hoàn chỉnh, bạn phải xác định tên bảng và cột của hàng mới. Hãy đưa ra một ví dụ:

INSERT INTO GIÁ TRỊ HÀNG HÓA ('106', '50', 'Coca-Cola', '1.68', 'Không có Alcogol,)

Ví dụ thêm một sản phẩm mới vào bảng. Các giá trị được chỉ định sau VALUES cho mỗi cột. Nếu không có giá trị tương ứng cho cột, thì bạn phải chỉ định NULL. Cột được điền đầy các giá trị theo thứ tự được chỉ định khi tạo bảng.

Trong trường hợp chỉ thêm một phần của chuỗi, bạn phải xác định cụ thể các tên cột, như trong ví dụ:

INSERT INTO Commodity (commodity_id, vendor_id, commodity_name)

GIÁ TRỊ ('106', '50', 'Coca-Cola',)

Chúng tôi chỉ nhập vào các số nhận dạng của hàng hoá, nhà cung cấp và tên của nó, và các trường còn lại được để trống.

Thêm kết quả truy vấn

Về cơ bản, INSERT được sử dụng để thêm các chuỗi, nhưng cũng có thể được sử dụng để thêm các kết quả tuyên bố SELECT.

Chỉnh sửa dữ liệu

Để thay đổi thông tin trong các trường của bảng cơ sở dữ liệu, bạn phải sử dụng câu lệnh UPDATE. Nhà điều hành có thể được sử dụng theo hai cách:

  • Tất cả các hàng trong bảng được cập nhật.
  • Chỉ cho một chuỗi cụ thể.

UPDATE bao gồm ba yếu tố chính:

  • Bảng mà bạn muốn thay đổi;
  • Tên trường và các giá trị mới;
  • Điều kiện để lựa chọn hàng thay đổi.

Hãy xem xét một ví dụ. Hãy nói rằng một sản phẩm có ID = 106 đã thay đổi giá trị, do đó dòng này cần phải được cập nhật. Viết câu sau đây:

UPDATE Commodity SET commodity_price = '3.2' WHERE commodity_id = '106'

Chúng tôi chỉ định tên của bảng, trong trường hợp của chúng tôi là hàng hoá, nơi mà bản cập nhật sẽ được thực hiện, sau đó sau SET, giá trị mới của cột và tìm thấy bản ghi mong muốn, chỉ định ID mong muốn trong mệnh đề WHERE.

Để thay đổi nhiều cột sau câu lệnh SET, chỉ định một số cặp giá trị cột, được phân tách bằng dấu phẩy. Chúng tôi đang xem xét một ví dụ trong đó tên và giá của một sản phẩm được cập nhật:

UPDATE Commodity SET commodity_name = 'Fanta', commodity_price = '3.2' WHERE commodity_id = '106'

Để xóa thông tin trong một cột, bạn có thể đặt nó thành NULL nếu cấu trúc bảng cho phép nó. Cần phải nhớ rằng NULL chính xác là "không" giá trị, và không phải là số không ở dạng văn bản hoặc số. Xóa mô tả sản phẩm:

UPDATE Commodity SET commodity_desc = NULL WHERE commodity_id = '106'

Xóa hàng

SQL yêu cầu xóa các hàng trong bảng được thực hiện bởi câu lệnh DELETE. Có hai cách sử dụng:

  • Một số hàng nhất định sẽ bị xóa trong bảng;
  • Tất cả các hàng trong bảng đều bị xóa.

Ví dụ về xóa một hàng từ một bảng:

DELETE FROM Hàng hóa WHERE commodity_id = '106'

Sau khi XÓA FROM, chỉ định tên của bảng trong đó hàng sẽ bị xóa. Mệnh đề WHERE chứa một điều kiện để chọn các hàng cần xóa. Trong ví dụ, chúng ta xóa dòng mục với ID = 106. Điều rất quan trọng là chỉ định WHERE. Việc bỏ qua toán tử này sẽ dẫn đến việc loại bỏ tất cả các hàng trong bảng. Điều này cũng áp dụng cho việc thay đổi giá trị của các trường.

Câu lệnh DELETE không chỉ rõ các tên cột và metacharacters. Nó loại bỏ hoàn toàn đường dây, và nó không thể xóa một cột.

Sử dụng SQL trong Access

Microsoft Access thường được sử dụng trong chế độ tương tác để tạo bảng, cơ sở dữ liệu, quản lý, sửa đổi, phân tích dữ liệu trong cơ sở dữ liệu và thực hiện các truy vấn SQL Access thông qua một Query Designer tương tác thuận tiện, sử dụng mà bạn có thể xây dựng và thực thi các câu lệnh SQL Bất kỳ sự phức tạp nào.

Ngoài ra, chế độ truy cập máy chủ được hỗ trợ, trong đó truy cập DBMS có thể được sử dụng như một máy truy vấn truy vấn SQL cho bất kỳ nguồn dữ liệu ODBC. Tính năng này cho phép các ứng dụng Truy cập tương tác với cơ sở dữ liệu dưới bất kỳ định dạng nào.

Phần mở rộng SQL

Bởi vì các truy vấn SQL không có tất cả các khả năng của các ngôn ngữ lập trình thủ tục, chẳng hạn như các vòng lặp, nhánh, v.v ..., các nhà cung cấp DBMS đang phát triển phiên bản SQL của riêng mình với các tính năng tiên tiến. Trước hết, đây là hỗ trợ cho các thủ tục lưu trữ và các nhà khai thác ngôn ngữ thủ tục tiêu chuẩn.

Các phương ngữ phổ biến nhất của ngôn ngữ là:

  • Cơ sở dữ liệu Oracle - PL / SQL
  • Interbase, Firebird - PSQL
  • Microsoft SQL Server - Transact-SQL
  • PostgreSQL - PL / pgSQL.

SQL trên Internet

Cơ sở dữ liệu MySQL được phân phối dưới giấy phép miễn phí của Giấy phép Công cộng GNU. Có một giấy phép thương mại với khả năng phát triển mô-đun tùy chỉnh. Là một phần không thể tách rời của các hội đồng phổ biến nhất của các máy chủ Internet, như XAMPP, WAMP và LAMP, và là cơ sở dữ liệu phổ biến nhất để phát triển các ứng dụng trên Internet.

Nó được phát triển bởi Sun Microsystems và hiện đang được hỗ trợ bởi Oracle. Nó hỗ trợ cơ sở dữ liệu lên đến 64 terabyte, cú pháp chuẩn của SQL: 2003, sao chép cơ sở dữ liệu và dịch vụ đám mây.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 vi.delachieve.com. Theme powered by WordPress.