1. 程式人生 > >mysql(一) 基礎概念

mysql(一) 基礎概念

MySQL 為關係型資料庫(Relational Database Management System), 這種所謂的"關係型"可以理解為"表格"的概念, 一個關係型資料庫由一個或數個表格組成, 如圖所示的一個表格:

  • 表頭(header): 每一列的名稱;
  • 列(row): 具有相同資料型別的資料的集合;
  • 行(col): 每一行用來描述某個人/物的具體資訊;
  • 值(value): 行的具體資訊, 每個值必須與該列的資料型別相同;
  • 鍵(key): 表中用來識別某個特定的人\物的方法, 鍵的值在當前列中具有唯一性。

Windows下MySQL的配置

配置步驟:

1. 將下載的 mysql-noinstall-5.1.69-win32.zip 解壓至需要安裝的位置, 如: C:\Program Files;

2. 在安裝資料夾下找到 my-small.ini 配置檔案, 將其重新命名為 my.ini , 開啟進行編輯, 在 [client] 與 [mysqld] 下均新增一行: default-character-set = gbk

3. 開啟 Windows 環境變數設定, 新建變數名 MYSQL_HOME , 變數值為 MySQL 安裝目錄路徑, 這裡為 C:\Program Files\mysql-5.1.69-win32

4. 在 環境變數 的 Path 變數中新增 ;%MYSQL_HOME%\bin;

5. 安裝 MySQL 服務, 開啟Windows命令提示符, 執行命令: mysqld --install MySQL --defaults-file="my.ini"

 提示"Service successfully installed."表示成功;

MySQL服務的啟動、停止與解除安裝

在 Windows 命令提示符下執行:

啟動: net start MySQL

停止: net stop MySQL

解除安裝: sc delete MySQL

MySQL指令碼的基本組成

與常規的指令碼語言類似, MySQL 也具有一套對字元、單詞以及特殊符號的使用規定, MySQL 通過執行 SQL 指令碼來完成對資料庫的操作, 該指令碼由一條或多條MySQL語句(SQL語句 + 擴充套件語句)組成, 儲存時指令碼檔案字尾名一般為 .sql。在控制檯下, MySQL 客戶端也可以對語句進行單句的執行而不用儲存為.sql檔案。

識別符號

識別符號用來命名一些物件, 如資料庫、表、列、變數等, 以便在指令碼中的其他地方引用。MySQL識別符號命名規則稍微有點繁瑣, 這裡我們使用萬能命名規則: 識別符號由字母、數字或下劃線(_)組成, 且第一個字元必須是字母或下劃線。

對於識別符號是否區分大小寫取決於當前的作業系統, Windows下是不敏感的, 但對於大多數 linux\unix 系統來說, 這些識別符號大小寫是敏感的。

關鍵字:

 

MySQL的關鍵字眾多, 這裡不一一列出, 在學習中學習。 這些關鍵字有自己特定的含義, 儘量避免作為識別符號。

語句:

 

MySQL語句是組成MySQL指令碼的基本單位, 每條語句能完成特定的操作, 他是由 SQL 標準語句 + MySQL 擴充套件語句組成。

函式:

 

MySQL函式用來實現資料庫操作的一些高階功能, 這些函式大致分為以下幾類: 字串函式、數學函式、日期時間函式、搜尋函式、加密函式、資訊函式。

MySQL中的資料型別

MySQL有三大類資料型別, 分別為數字、日期\時間、字串, 這三大類中又更細緻的劃分了許多子型別:

  • 數字型別
    • 整數: tinyint、smallint、mediumint、int、bigint
    • 浮點數: float、double、real、decimal
  • 日期和時間: date、time、datetime、timestamp、year
  • 字串型別
    • 字串: char、varchar
    • 文字: tinytext、text、mediumtext、longtext
    • 二進位制(可用來儲存圖片、音樂等): tinyblob、blob、mediumblob、longblob

這裡不能詳細對這些型別進行介紹了, 篇幅可能會很長, 詳細介紹參見: http://blog.csdn.net/changhenshui1990/article/details/77159048

使用MySQL資料庫

登入到MySQL

當 MySQL 服務已經執行時, 我們可以通過MySQL自帶的客戶端工具登入到MySQL資料庫中, 首先開啟命令提示符, 輸入以下格式的命名:

mysql -h 主機名 -u 使用者名稱 -p

  • -h : 該命令用於指定客戶端所要登入的MySQL主機名, 登入當前機器該引數可以省略;
  • -u : 所要登入的使用者名稱;
  • -p : 告訴伺服器將會使用一個密碼來登入, 如果所要登入的使用者名稱密碼為空, 可以忽略此選項。

以登入剛剛安裝在本機的MySQL資料庫為例, 在命令列下輸入 mysql -u root -p 按回車確認, 如果安裝正確且MySQL正在執行, 會得到以下響應:

Enter password:

若密碼存在, 輸入密碼登入, 不存在則直接按回車登入, 按照本文中的安裝方法, 預設 root 賬號是無密碼的。登入成功後你將會看到 Welecome to the MySQL monitor... 的提示語。

然後命令提示符會一直以 mysql> 加一個閃爍的游標等待命令的輸入, 輸入 exit 或 quit 退出登入。

建立一個數據庫

使用 create database 語句可完成對資料庫的建立, 建立命令的格式如下:

create database 資料庫名 [其他選項];

例如我們需要建立一個名為 samp_db 的資料庫, 在命令列下執行以下命令:

create database samp_db character set gbk;

為了便於在命令提示符下顯示中文, 在建立時通過 character set gbk 將資料庫字元編碼指定為 gbk。建立成功時會得到 Query OK, 1 row affected(0.02 sec) 的響應。

注意: MySQL語句以分號(;)作為語句的結束, 若在語句結尾不新增分號時, 命令提示符會以 -> 提示你繼續輸入(有個別特例, 但加分號是一定不會錯的);

提示: 可以使用 show databases; 命令檢視已經建立了哪些資料庫。

選擇所要操作的資料庫

要對一個數據庫進行操作, 必須先選擇該資料庫, 否則會提示錯誤:

ERROR 1046(3D000): No database selected

兩種方式對資料庫進行使用的選擇:

一: 在登入資料庫時指定, 命令: mysql -D 所選擇的資料庫名 -h 主機名 -u 使用者名稱 -p

例如登入時選擇剛剛建立的資料庫: mysql -D samp_db -u root -p

二: 在登入後使用 use 語句指定, 命令: use 資料庫名;

use 語句可以不加分號, 執行 use samp_db 來選擇剛剛建立的資料庫, 選擇成功後會提示: Database changed