MySQL數據庫的基本使用和管理

1.mysql數據存儲結構

  1.1由“數據庫”——》“表”——》“數據”組成

  ??1.2管理數據庫需要使用SQL(結構化查詢語言)

    SQL語言分為:

      1 數據查詢語言DQL

       按照指定的組合、條件表達式或排序檢索已存在的數據庫中數據,不改變數據庫中數據。

       命令:SELECT…FROM…WHERE…

      2 數據操縱語言DML  

       對已經存在的數據庫進行元組的插入、刪除、修改等操作

       命令:INSERT、UPDATE、DELETE

      3 數據定義語言DDL  

        創建、修改或刪除數據庫中各種對象,包括表、視圖、索引等。

?       命令:CREATE?TABLE?,?CREATE?VIEW,?CREATE?INDEX、ALTER?TABLE?,
?????????????       DROP?TABLE?,?DROP?VIEW,?DROP?INDEX?

      4 數據控制語言DCL

       用來授予或收回訪問數據庫的某種特權、控制數據操縱事務的發生時間及效果、對數據庫進行監視

       命令:GRANT、REVOKE、COMMIT、ROLLBACK

2.查詢所有數據庫

  通過命令行登錄數據庫,輸入第一個查看數據庫的sql語句

    mysql> show databases;  –默認顯示4個數據庫

      +——————–+
      | Database ? ? ? ? ? |
      +——————–+
      | information_schema |  –mysql元數據,基礎數據
      | mysql ? ? ? ? ? ? ?|          –mysql配置數據庫,其中包含用戶信息(用戶名和密碼,權限管理)
      | performance_schema |  –mysql數據庫軟件的運行數據,日志信息,性能數據
      | test ? ? ? ? ? ? ? |           –測試數據庫,空數據庫
      +——————–+

3,創建數據庫

    3.1?sql語句為:create database ? ?數據庫名稱;

    mysql> create database first;  –first為數據庫名稱

      Query OK, 1 row affected (0.01 sec)

    3.2 創建數據庫時設置數據庫的字符

     mysql> create database two    –此時不需輸入分號,因為分號意味這語句結束,直接回車

        -> default character set utf8;  –設置默認字符為utf-8
     Query OK, 1 row affected (0.00 sec)

    3.3 查看數據庫的默認字符集

    mysql> show create database first; ?  ?–first為數據庫名稱

    +———-+—————————————————————+
    | Database | Create Database ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? |
    +———-+—————————————————————+
    | first ? ?| CREATE DATABASE `first` /*!40100 DEFAULT CHARACTER SET gbk */ |
    +———-+—————————————————————+
    1 row in set (0.00 sec)

    3.4 刪除數據庫

    mysql> drop database two; ?    –two為數據庫名稱

    Query OK, 0 rows affected (0.17 sec)

    3.5 修改數據庫的默認字符集

    mysql> alter database first default character set utf8; ?   –修改first數據庫的字符為utf-8

    Query OK, 1 row affected (0.00 sec)  

4.表管理

    4.1選擇數據庫  

      mysql> use first;  –first為數據庫名稱
      Database changed

    4.2創建表

      mysql> create table student(    –student為表名稱
? ?        -> sid int,           –sid為字段名稱 編號,int是字段類型 ?整形
? ?        -> sname varchar(20),     –sname為字段名稱 姓名,varchar(20)是字段類型 字符串長度是20
? ?        -> sage int          –sage為字段名稱 年齡,int是字段類型,整形
? ?        -> );
      Query OK, 0 rows affected (0.14 sec)

     4.3查看所有表

    mysql> show tables;

      +—————–+
      | Tables_in_first |
      +—————–+
      | student ? ? ? ? |
      +—————–+
      1 row in set (0.00 sec)

     4.4查看一張表的表結構

    mysql> desc student;    –student表名稱

      +——-+————-+——+—–+———+——-+
      | Field | Type ? ? ? ?| Null | Key | Default | Extra |
      +——-+————-+——+—–+———+——-+
      | sid ? | int(11) ? ? | YES ?| ? ? | NULL ? ?| ? ? ? |
      | sname | varchar(20) | YES ?| ? ? | NULL ? ?| ? ? ? |
      | sage ?| int(11) ? ? | YES ?| ? ? | NULL ? ?| ? ? ? |
      +——-+————-+——+—–+———+——-+
      3 rows in set (0.05 sec)

     4.5刪除表

    mysql> drop table student;

      Query OK, 0 rows affected (0.11 sec)

?    ?4.6修改表

    mysql> alter table student add column sgender varchar(2);    –向student表中增加一個sgender的字段,column可以省略

      Query OK, 0 rows affected (0.06 sec)
      Records: 0 ?Duplicates: 0 ?Warnings: 0

    

      mysql> alter table student drop sgender;      –刪除student表中sgender這個字段,column可以省略

      Query OK, 0 rows affected (0.06 sec)
      Records: 0 ?Duplicates: 0 ?Warnings: 0

      

      mysql> alter table student modify sname varchar(10);    –修改student表中sname字段的類型為varchar(10)
      Query OK, 0 rows affected (0.08 sec)
      Records: 0 ?Duplicates: 0 ?Warnings: 0

      

      mysql> alter table student change sname newsname varchar(20);    –修改student表中sname字段的名稱,變為newsname
      Query OK, 0 rows affected (0.08 sec)
      Records: 0 ?Duplicates: 0 ?Warnings: 0

?

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享