1. 程式人生 > >MySQL儲存結構及SQL分類

MySQL儲存結構及SQL分類

MySQL目錄結構
這裡寫圖片描述

bin —- mysql執行程式
docs —- 文件
share — 各國編碼資訊
data —- 存放mysql 資料檔案
* 每個資料庫 建立一個同名資料夾,.frm 存放table表結構、ibdata1存放mysql中所有資料表資料記錄
* 在資料庫每個資料夾中存在db.opt —- 儲存資料預設編碼集

(一)連線MySQL
mysql -h 主機ip -P 埠號 -u root -p 回車 輸入密碼;
如果是連線本機的話,可以是:

格式: mysql -h 主機地址 -u 使用者名稱 -p 使用者密碼
1、例1:連線到本機上的MYSQL。
  首先在開啟DOS視窗,然後進入目錄 mysql bin,再鍵入命令mysql -uroot -p,回車後提示你輸密碼,

托福考試費用如果剛安裝好MYSQL,超級使用者root是沒有密碼的,故直接回車即可進入到MYSQL中了,MYSQL的提示符是: mysql>。
2、例2:連線到遠端主機上的MYSQL。假設遠端主機的IP為:110.110.110.110,使用者名稱為root,密碼為abcd123。則鍵入以下命令:
  mysql -h 110.110.110.110 -uroot -p abcd123
  (注:u與root可以不用加空格,其它也一樣)
3、退出MYSQL命令: exit (回車)。

(二)MySQL資料庫內部構造

關係化資料庫模型結構

這裡寫圖片描述

MySQL資料庫伺服器、資料庫和表的關係

這裡寫圖片描述

  • 所謂安裝資料庫伺服器,只是在機器上裝了一個數據庫管理程式,這個管理程式可以管理多個數據庫,
    愛爾蘭留學
    一般開發人員會針對每一個應用建立一個數據庫。
  • 為儲存應用中實體的資料,一般會在資料庫建立多個表,以儲存程式中實體的資料。
  • 資料庫伺服器、資料庫和表的關係如上圖所示:

這裡寫圖片描述

1.在一個MySQL伺服器上,可以使用多個數據庫database,安裝mysql後,自帶兩個資料庫 mysql、test:
mysql 存放資料核心資料 —– 使用者、許可權 …
test 練習資料庫, 預設該資料庫空的

2.使用者操作資料庫(資料表)需要許可權,需要對使用者進行授權。在資料庫中存在很多使用者,預科每個使用者會具有相應的許可權,有了許可權就可以操作資料庫、資料表中的資料。所有資料庫裡面都自帶一個root使用者,預設是管理員賬戶,具備資料庫中的所有許可權,即可以操作所有庫和所有表。

3、資料在資料庫中儲存在資料表中:

這裡寫圖片描述

java程式中的一個物件,對應資料表中的一行(一條記錄)

MySQL資料庫組成小結

1、在mysql資料庫軟體內部建立使用多個數據庫 database
2、在每一個數據庫database中建立使用多個數據表 table
3、table存放資料記錄,一條資料記錄,對應java程式中一個物件
4、在資料庫中存在很多使用者,使用者根據相應許可權操作資料庫或者資料表

(三)SQL語言
SQL(Structured Query Language),結構化查詢語言
1.非過程性語言- - - - - 每一條SQL語句都是獨立執行的,sat培訓沒有先後依賴關係

上面程式典型過程性語言 ,定義值之後會得到儲存,並且中間有一個執行過程。
2.官方提供資料庫標準語言 —- 任何資料庫都必須支援SQL語法
由於SQL的非過程性的特點,因此功能不夠強大,很多資料庫的內部都對SQL語言進行了加強,並且都提供了過程性的特徵,可以利用其程式設計。

3.SQL分類
SQL是用來存取關係資料庫的語言,具有查詢、操縱、定義和控制關係型資料庫的四方面功能:

    • DDL (資料定義問題):定義、修改、刪除 資料庫內部結構
      資料定義語言 - Data Definition Language
      用來定義資料庫的物件,如資料表、檢視、索引等
      例如 : 對資料庫、資料表定義、修改、刪除 以上操作
    • DML (資料操縱問題):對資料表記錄 增加、刪除、修改
      資料處理語言 - Data Manipulation Language
      在資料庫表中更新,增加和刪除記錄
      例如 update, insert, delete
    • DCL (資料控制問題):使用者授權、if 、while、事務管理
      資料控制語言 – Data Control Language
      指用於設定使用者許可權和控制事務語句
      例如grant,revoke,if…else,while,begin transaction
    • DQL (資料查詢問題):select查詢語句
      資料查詢語言 – Data Query Language
      例如select