三級(jí)數(shù)據(jù)庫(kù)技術(shù)輔導(dǎo)第四講:SQL語(yǔ)言應(yīng)用

字號(hào):

3 SQL語(yǔ)言應(yīng)用
    3.1 數(shù)據(jù)定義(DDL)
    (1)基表定義:CREATE TABLE
    CREATE TABLE 表名
    (域名1 數(shù)據(jù)類型1 [列完整性約束條件][, 域名2 數(shù)據(jù)類型2 [列完整性約束條件]]…)[in 數(shù)據(jù)庫(kù)空間]
    例:定義書(shū)中圖17.8的關(guān)系STU
    CREATE TABLE STU
     (S CHAR(6) NOT NULL, SN CHAR(10) NOT NULL, SA INTEGER NOT NULL, SD CHAR(8) NOT NULL)
    (2)視圖定義:CREATE VIEW,Access數(shù)據(jù)庫(kù)目前不支持
    CREATE VIEW 視圖名 [(域名表)] AS (SELECT語(yǔ)句)
    (3)索引定義:CREATE [UNIQUE] INDEX,用于對(duì)基表建立索引以提供對(duì)基表的存取路徑
     索引可以加快數(shù)據(jù)庫(kù)中有關(guān)數(shù)據(jù)的存取速度。
    CREATE [UNIQUE] INDEX 索引名 ON [(域名表)] AS (SELECT語(yǔ)句)
    例:對(duì)書(shū)中圖17.8的關(guān)系STU的S域創(chuàng)建名為SNO的索引
    CREATE UNIQUE INDEX SNO ON STU(S)
    (4)基表刪除:DROP TABLE
    DROP TABLE 基表名
    例:DROP TABLE STU
    (5)視圖刪除:DROP VIEW
    DROP VIEW 視圖名
    (6)索引刪除:DROP INDEX
    DROP INDEX 索引名 ON 基表名
    例:DROP INDEX SNO ON STU
    (7)基表修改:ALTER TABLE
    ALTER TABLE 表名 ADD(OR MODIFY) 域名 數(shù)據(jù)類型
    例:在表STU上增加一個(gè)域名為性別(SE),其數(shù)據(jù)類型為CHAR(4)
     ALTER TABLE STU ADD SE CHAR(4)
    例:將表STU上的S域的字符串長(zhǎng)度改為10。
     ALTER TABLE STU MODIFY S CHAR(10) !Access數(shù)據(jù)庫(kù)不支持MODIFY
    3.2 數(shù)據(jù)操作(DML)
     數(shù)據(jù)操作包括數(shù)據(jù)的查詢、插入、刪除、修改。命令分別為SELECT、INSERT、DELETE、UPDATE
    3.3 數(shù)據(jù)控制(DCL)
     SQL的數(shù)據(jù)控制功能包括存取控制和完整性控制,為了防止非法用戶對(duì)數(shù)據(jù)的使用和破壞,提供了GRANT和REVOKE語(yǔ)句,是對(duì)操作的授權(quán)控制語(yǔ)句。