1. 程式人生 > >資料庫常用命令(部分)

資料庫常用命令(部分)

1、建立資料庫
CREATE DATABASE 資料庫名;

2、刪除資料庫
drop database 資料庫名;

3、從命令提示視窗中選擇MySQL資料庫
use 資料庫名;

4、MySQL 建立資料表
CREATE TABLE table_name(表名) (column_name column_type);
    eg:CREATE TABLE IF NOT EXISTS `runoob_tbl`(
         `runoob_id` INT UNSIGNED AUTO_INCREMENT,
           `runoob_title` VARCHAR(100) NOT NULL,
           `runoob_author` VARCHAR(40) NOT NULL,
           `submission_date` DATE,
            PRIMARY KEY ( `runoob_id` )
           )ENGINE=InnoDB DEFAULT CHARSET=utf8;

5、刪除資料表
DROP TABLE table_name ;
    eg: mysql> use RUNOOB;
            Database changed
            mysql> DROP TABLE runoob_tbl(表明)
            Query OK, 0 rows affected (0.8 sec)

6、插入資料
INSERT INTO table_name(表名)
            ( field1, field2,...fieldN )
                        VALUES
                        ( value1, value2,...valueN );

如果資料是字元型,必須使用單引號或者雙引號,如:"value"。

eg:    mysql> INSERT INTO runoob_tbl (表名)
    -> (runoob_title, runoob_author, submission_date)
    -> VALUES
    -> ("學習 PHP", "菜鳥教程", NOW());


7、查詢資料
    SELECT column_name,column_name
    FROM table_name
    [WHERE Clause]
    [LIMIT N][ OFFSET M]
查詢語句中你可以使用一個或者多個表,表之間使用逗號(,)分割,並使用WHERE語句來設定查詢條件。
SELECT 命令可以讀取一條或者多條記錄。
你可以使用星號(*)來代替其他欄位,SELECT語句會返回表的所有欄位資料
你可以使用 WHERE 語句來包含任何條件。
你可以使用 LIMIT 屬性來設定返回的記錄數。
你可以通過OFFSET指定SELECT語句開始查詢的資料偏移量。預設情況下偏移量為0。

select * from runoob_tbl;

8、MySQL WHERE 子句
    SELECT field1, field2,...fieldN FROM table_name1(表名1), table_name2(表名2)...
    [WHERE condition1(限定條件1) [AND [OR]] condition2(限定條件2).....

查詢語句中你可以使用一個或者多個表,表之間使用逗號, 分割,並使用WHERE語句來設定查詢條件。
你可以在 WHERE 子句中指定任何條件。
你可以使用 AND 或者 OR 指定一個或多個條件。
WHERE 子句也可以運用於 SQL 的 DELETE 或者 UPDATE 命令。
WHERE 子句類似於程式語言中的 if 條件,根據 MySQL 表中的欄位值來讀取指定的資料。

eg:    
    SELECT * from runoob_tbl(表名) WHERE runoob_author='菜鳥教程'(限制條件);

注意:MySQL 的 WHERE 子句的字串比較是不區分大小寫的。 
      你可以使用 BINARY 關鍵字來設定 WHERE 子句的字串比較是區分大小寫的。

eg:
       mysql> SELECT * from runoob_tbl WHERE BINARY runoob_author='runoob.com';
       Empty set (0.01 sec)
 
       mysql> SELECT * from runoob_tbl WHERE BINARY runoob_author='RUNOOB.COM';

例子:    runoob_id | runoob_title  | runoob_author | submission_date |
    +-----------+---------------+---------------+-----------------+
    | 3         | JAVA 教程   | RUNOOB.COM    | 2016-05-06      |
    | 4         | 學習 Python | RUNOOB.COM    | 2016-03-06      |

9、MySQL UPDATE 查詢 
     (如果我們需要修改或更新 MySQL 中的資料,我們可以使用 SQL UPDATE 命令來操作)
    UPDATE table_name(表名) SET field1=new-value1, field2=new-value2
    [WHERE Clause(限定條件)]

你可以同時更新一個或多個欄位。
你可以在 WHERE 子句中指定任何條件。
你可以在一個單獨表中同時更新資料。
當你需要更新資料表中指定行的資料時 WHERE 子句是非常有用的。 

eg:
    mysql> UPDATE runoob_tbl SET runoob_title='學習 C++' WHERE runoob_id=3;
    Query OK, 1 rows affected (0.01 sec)
 
    mysql> SELECT * from runoob_tbl WHERE runoob_id=3;
    +-----------+--------------+---------------+-----------------+
    | runoob_id | runoob_title | runoob_author | submission_date |
    +-----------+--------------+---------------+-----------------+
    | 3         | 學習 C++   | RUNOOB.COM    | 2016-05-06      |
    +-----------+--------------+---------------+-----------------+
    1 rows in set (0.01 sec)


10、MySQL DELETE 語句 
    (你可以使用 SQL 的 DELETE FROM 命令來刪除 MySQL 資料表中的記錄。 )

    DELETE FROM table_name(表名) [WHERE Clause(限定條件)]

如果沒有指定 WHERE 子句,MySQL 表中的所有記錄將被刪除。
你可以在 WHERE 子句中指定任何條件
您可以在單個表中一次性刪除記錄。
當你想刪除資料表中指定的記錄時 WHERE 子句是非常有用的。 

eg:
    mysql> use RUNOOB(資料庫名);
    Database changed
    mysql> DELETE FROM runoob_tbl(表名) WHERE runoob_id=3(限定條件);
    Query OK, 1 row affected (0.23 sec)

11、MySQL LIKE 子句
    (我們知道在 MySQL 中使用 SQL SELECT 命令來讀取資料, 同時我們可以在 SELECT 語句中使用
     WHERE 子句來獲取指定的記錄。
     WHERE 子句中可以使用等號 = 來設定獲取資料的條件,如 "runoob_author = 'RUNOOB.COM'"。
     但是有時候我們需要獲取 runoob_author 欄位含有 "COM" 字元的所有記錄,
     這時我們就需要在 WHERE 子句中使用 SQL LIKE 子句。 
     SQL LIKE 子句中使用百分號 %字元來表示任意字元,類似於UNIX或正則表示式中的星號 *。
     如果沒有使用百分號 %, LIKE 子句與等號 = 的效果是一樣的。 )
    
    SELECT field1, field2,...fieldN 
    FROM table_name
    WHERE field1 LIKE condition1 [AND [OR]] filed2 = 'somevalue'

例項
    以下是我們將 runoob_tbl 表中獲取 runoob_author 欄位中以 COM 為結尾的的所有記錄:
    SQL LIKE 語句:
    mysql> use RUNOOB;
    Database changed
    mysql> SELECT * from runoob_tbl  WHERE runoob_author LIKE '%COM';
    +-----------+---------------+---------------+-----------------+
    | runoob_id | runoob_title  | runoob_author | submission_date |
    +-----------+---------------+---------------+-----------------+
    | 3         | 學習 Java   | RUNOOB.COM    | 2015-05-01      |
    | 4         | 學習 Python | RUNOOB.COM    | 2016-03-06      |
    +-----------+---------------+---------------+-----------------+