NIIT Forum

Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

~~~~~Học Tập-Trao Đổi-Giao Lưu~~~~~


    Giới thiệu ngôn ngữ truy vấn CSDL SQL

    avatar
    Admin
    Admin


    Tổng số bài gửi : 39
    Registration date : 30/12/2007

    Giới thiệu ngôn ngữ truy vấn CSDL SQL Empty Giới thiệu ngôn ngữ truy vấn CSDL SQL

    Bài gửi  Admin 2/7/2008, 11:07 am

    I.Một số khái niệm cơ bản về CSDL
    Cơ sở dữ liệu (database) có thể hiểu là nơi chứa dữ liệu. Có nhiều loại cơ sở dữ liệu khác nhau như cơ sở dữ liệu quan hệ, CSDL hướng đối tượng, CSDL phân tán...
    Hiện nay, trong phần lớn các ứng dụng, người ta thường sử dụng CSDL quan hệ.
    Trong mô hình CSDL quan hệ, dữ liệu thường được chia thành các bảng có liên quan với nhau.
    VD: ta có 2 bảng:
    Bảng 1 chứa các thông tin về Mã hàng, tên hàng, ngày nhập hàng, giá nhập hàng
    Bảng 2 chứa các thông tin về Mã hàng, ngày bán hàng, giá bán.
    Hai bảng này có quan hệ với nhau thông qua mã hàng, tức là chỉ cần có mã hàng ở bảng 2, ta có thể tìm ra tên hàng dựa trên mối liên hệ giữa mã hàng và tên hàng lưu ở bảng 1.
    Hệ quản trị CSDL là chương trình dùng để quản lý một CSDL nào đó. Chẳng hạn như chương trình Access là một hệ quản trị CSDL để quản lý CSDL Access. Thông thường thì tên của hệ quản trị CSDL gắn liền với tên của loại CSDL. VD như: CSDL Access <-> Hệ quản trị CSDL Access, CSDL MySQL <-> Hệ quản trị CSDL MySQL, CSDL Oracle <-> Hệ quản trị CSDL Oracle. Trong trường hợp này thì người ta thường nhầm lẫn giữa khái niệm CSDL và cấu trúc (dạng nhị phân) của một CSDL do hệ quản trị
    CSDL quy định.
    Người ta gọi các cột trong một bảng là các trường, các dòng trong một bảng là các bản ghi.
    Mỗi trường sẽ có một kiểu dữ liệu xác định. Đó có thể là kiểu số, kiểu chuỗi, kiểu ngày tháng...
    VD về một bảng có chứa thông tin người dùng. Bảng này sẽ có tên là NSD, các cột (trường) là: Ma_ND, Ten_ND, Tuoi_ND, Matkhau_ND; trong đó Ma_ND có kiểu nguyên, Ten_ND có kiểu chuỗi, Tuoi_ND có kiểu số, Matkhau_ND có kiểu chuỗi.

    II. Ngôn ngữ truy vấn CSDL SQL
    SQL là một ngôn ngữ được sử dụng trong các ngôn ngữ lập trình để truy vấn thông tin trong CSDL. Điểm mạnh của ngôn ngữ này là cấu trúc đơn giản, có thể nhập lệnh vào dưới dạng các chuỗi văn bản, sau đó chuyển câu lệnh tới các chương trình điều khiển trung gian để truy vấn dữ liệu rồi trả về cho chương trình. Như vậy, mọi thao tác kết xuất, truy vấn hoàn tòan dễ dàng thông qua việc điều khiển chuỗi văn bản có chứa câu lệnh SQL.
    Bài viết này tập trung vào việc trình bày cú pháp của ngôn ngữ SQL, có thể sử dụng PHP để biểu diễn một số thao tác để mọi người dễ dàng hình dung.
    1. Câu lệnh chèn dữ liệu vào một bảng.
    Cú pháp của câu lệnh này có dạng:
    INSERT INTO tên_bảng (danh_sách_trường) VALUES (danh_sách_giá_trị)
    Trong đó:
    Các từ khóa cố định là INSERT, INTO và VALUES.
    tên_bảng là tên của một bảng quan hệ trong CSDL.
    danh_sách_trường là danh sách các trường trong bảng quan hệ được sử dụng để chèn giá trị vào, mỗi trường cách nhau một dấu phảy.
    danh_sách_giá_trị là danh sách các giá trị tương ứng với các trường, có
    bao nhiêu trường thì phải chèn vào bấy nhiêu giá trị. Thông thường, các giá trị chuỗi phải được đặt trong cặp dấu nháy hoặc dấu ngoặc kép tùy thuộc vào ngôn ngữ biểu diễn và kiểu dữ liệu của trường. Mỗi giá trị cách nhau bởi một dấu phẩy.
    VD, với bảng dữ liệu ở trên (Bảng NSD có các cột (trường)là: Ma_ND, Ten_ND, Tuoi_ND, Matkhau_ND), ta có thể dùng câu lệnh SQL để chèn thông tin vào như sau:
    INSERT INTO NSD (Ten_ND,MatKhau_ND) VALUES('Sinh','123456')
    Hoặc ta có thể chèn nhiều thông tin hơn:
    INSERT INTO NSD (Ten_ND,Tuoi_ND,MatKhau_ND) VALUES('Sinh',30,'123456')
    2. Câu lệnh chỉnh sửa dữ liệu trong bảng
    Để chỉnh sửa (cập nhật) thông tin trong bảng, ta dùng câu lệnh UPDATE với cú pháp sau:
    UPDATE tên_bảng SET tên_trường1=giá_trị1 [, tên_trường_i=giá_trịi] WHERE điều_kiện
    Chẳng hạn, nếu ta muốn đổi mật khẩu của những người có trường Ten_ND là Sinh thành 'JQKA' trong bảng trên, ta sẽ làm như sau:
    UPDATE NSD SET Matkhau_ID = 'JQKA' WHERE Ten_ND='Sinh'
    Chú ý mệnh đề điều kiện WHERE. Mệnh đề này sẽ được mô tả chi tiết hơn ở phía dưới.
    3. Câu lệnh xóa dữ liệu trong bảng
    Để xóa dữ liệu trong bảng, ta dùng câu lệnh DELETE với cú pháp sau:
    DELETE FROM tên_bảng WHERE điều_kiện.
    Câu lệnh này sẽ xóa tất cả những bản ghi thỏa mãn điều kiện nằm sau mệnh đề WHERE.
    VD:
    UPDATE FROM NSD WHERE Ten_ND='Sinh'
    4. Câu lệnh truy vấn (tìm kiếm) dữ liệu trong bảng
    Đây là câu lệnh phức tạp nhất trong nhóm các câu lệnh của SQL.
    Cú pháp của lệnh này như sau:
    SELECT [danh_sách_trường] FROM [danh_sách_bảng] WHERE [danh_sách_điều_kiện] [ORDER BY]

      Hôm nay: 27/4/2024, 11:29 am