sqlite3以及sql的簡單介紹

數據庫的介紹(sqlite)

sqlite是一個小型的嵌入式數據庫,屬於關係型的數據庫。
數據庫
關係型數據庫
    是由多個數據庫表(二維表)組成.
E-R模型
    建立二維表,範式, ...


**數據庫表**
    二維表(多行多列組成)
        行: 一個實體, 記錄(record)
        列: 字段(field), 由具有相同數據類型或屬性組成, 一個實體由多個屬性(列)組成.

        **主鍵(key):** 
            一個數據庫表可能有多個記錄(行,也就是多個實體), 實體是唯一的(不可能有兩行是同樣的一個實體)。
            數據庫表爲了顯示實體的唯一性,在一個表中必須指定一個主鍵, 用來唯一標識該實體(一條記錄的)。
            主鍵是一個或多個字段組成。主鍵必須具有唯一性。


        外鍵(foreign key):
            E-R 實體與實體間的關係,怎麼表示?
            相同屬性的實體組成一個數據庫表,
            不同的實體位於不同的數據庫表中,不同的實體的關係是通過把另外一個實體的主鍵嵌入到該實體的記錄中來實現的。

數據庫系統
ORACLE ->
SQL SERVER ->

    MYSQL
    SQLITE3: 一個開源的關係型數據庫,輕量級的,非常適合在嵌入式等資源有限的系統中使用
        DB2
    達夢

    .....

SQL語句: (具體語法與例子可參考:http://www.w3school.com.cn/)
您需要在數據庫上執行的大部分工作都由SQL語句來完成
SQL是大多數數據庫的編程語言。

SQL語句:
    DDL :數據定義語言 Data Definition Language
        創建或刪除表格
        DDL語句:
            CREATE DATABASE 創建數據庫
            ALTER DATABASE 修改數據庫

            CREATE TABLE 創建一個表
                語法:
                    CREATE TABLE 表名
                    (
                        列名1 數據類型 [限制],
                        列名2 數據類型 [限制],
                        ...
                    );

                    數據類型
                        integer(size)
                        int(size)    

                        char(size)      字符串(長度), 固定長度
                        varchar(size)   可變長度字符串(最大長度)

                        decimal(size, d)   "size"規定數字的最大位數,"d"規定小數點右側的最大位數
                        numeric(size, d)  "size"規定數字的最大位數,"d"規定小數點右側的最大位數

                        date(yyyymmdd)  日期
                        ...
                    限制:
                        NOT NULL, 不爲空
                        UNIQUE , 唯一
                        PRIMARY KEY, 主鍵( 隱含NOT NULL, UNIQUE )
                        DEFAULT 默認


                    例子:
                        CREATE TABLLE db_score
                        (
                            ID int(4)  PRIMARY KEY,
                            NAME  varchar(32) NOT NULL,
                            SCORE int(4) 
                        );



            (?) ALTER TABLE 變更(改變)一個表, 用於在已有的表中添加、修改或刪除列
                SQLite supports a limited subset of ALTER TABLE. 
                The ALTER TABLE command in SQLite allows the user 
                to rename a table or to add a new column to an existing table.

                (1) ALTER TABLE 表名
                    ADD 列名 數據類型
                (2) ALTER TABLE 表名
                    DROP COLUMN 列名
                (3) ALTER TABLE 表名
                    ALTER COLUMN 列名  數據類型

            DROP TABLE  刪除表

            CREATE INDEX  創建索引
            DROP INDEX  刪除索引

    DML :數據操縱語言 Data Manipulate Language
        如在數據庫表中,“增” “刪” “改” “查”
        DML語句:
            SELECT 從數據庫表中查詢數據
                SELECT 語句用於從表中選取數據,結果被存儲在一個結果表中(稱爲結果集)

                語法:
                SELECT 列名1, 列名,  ……, 列名n  FROM 表名  [ WHERE  列名  運算符 值   AND/OR  列名  運算符 值]

                    “運算符”:
                        =  等於
                        <>  不等於
                        >  大於
                        < 小於
                        BETWEEN 在某個範圍內    ,如: 列名 BETWEEN value1 AND value2
                        LIKE    搜索某種模式
                                SQL語句字符串用音引號
                                SQL通配符:
                                    % 替代一個或多個字符 
                                    _ 僅替一個字符

            UPDATE  更新數據庫表中的數據
                語法:
                    UPDATE 表名 SET 列名1 = 新值,列名2 = 新值, ……, 列名n = 新值  WHERE 列名 運算符 值 ;


            DELETE 從數據庫表中刪除數據(一條或多條記錄)
                語法:
                DELETE FROM 表名 WHERE 列名 運算符 值 

                DELETE FROM 表名   ;  刪除表中所有行
                DELETE * FROM 表名 

            INSERT INTO 向數據庫表中插入數據(一個或多條記錄)
                語法:
                INSERT INTO 表名 VALUES(value1, value2, ...) ;
                or
                INSERT INTO 表名(列名1,列名2, ……) VALUES(value1, value2, ..) ;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章