
- MySQL 基礎
- MySQL - 首頁
- MySQL - 簡介
- MySQL - 特性
- MySQL - 版本
- MySQL - 變數
- MySQL - 安裝
- MySQL - 管理
- MySQL - PHP 語法
- MySQL - Node.js 語法
- MySQL - Java 語法
- MySQL - Python 語法
- MySQL - 連線
- MySQL - Workbench
- MySQL 資料庫
- MySQL - 建立資料庫
- MySQL - 刪除資料庫
- MySQL - 選擇資料庫
- MySQL - 顯示資料庫
- MySQL - 複製資料庫
- MySQL - 資料庫匯出
- MySQL - 資料庫匯入
- MySQL - 資料庫資訊
- MySQL 使用者
- MySQL - 建立使用者
- MySQL - 刪除使用者
- MySQL - 顯示使用者
- MySQL - 修改密碼
- MySQL - 授予許可權
- MySQL - 顯示許可權
- MySQL - 收回許可權
- MySQL - 鎖定使用者帳戶
- MySQL - 解鎖使用者帳戶
- MySQL 表
- MySQL - 建立表
- MySQL - 顯示錶
- MySQL - 修改表
- MySQL - 重命名錶
- MySQL - 克隆表
- MySQL - 清空表
- MySQL - 臨時表
- MySQL - 修復表
- MySQL - 描述表
- MySQL - 新增/刪除列
- MySQL - 顯示列
- MySQL - 重新命名列
- MySQL - 表鎖定
- MySQL - 刪除表
- MySQL - 派生表
- MySQL 查詢
- MySQL - 查詢
- MySQL - 約束
- MySQL - INSERT 查詢
- MySQL - SELECT 查詢
- MySQL - UPDATE 查詢
- MySQL - DELETE 查詢
- MySQL - REPLACE 查詢
- MySQL - INSERT IGNORE
- MySQL - INSERT ON DUPLICATE KEY UPDATE
- MySQL - INSERT INTO SELECT
- MySQL 運算子和子句
- MySQL - WHERE 子句
- MySQL - LIMIT 子句
- MySQL - DISTINCT 子句
- MySQL - ORDER BY 子句
- MySQL - GROUP BY 子句
- MySQL - HAVING 子句
- MySQL - AND 運算子
- MySQL - OR 運算子
- MySQL - LIKE 運算子
- MySQL - IN 運算子
- MySQL - ANY 運算子
- MySQL - EXISTS 運算子
- MySQL - NOT 運算子
- MySQL - 不等於運算子
- MySQL - IS NULL 運算子
- MySQL - IS NOT NULL 運算子
- MySQL - BETWEEN 運算子
- MySQL - UNION 運算子
- MySQL - UNION 與 UNION ALL
- MySQL - MINUS 運算子
- MySQL - INTERSECT 運算子
- MySQL - INTERVAL 運算子
- MySQL 連線
- MySQL - 使用連線
- MySQL - INNER JOIN
- MySQL - LEFT JOIN
- MySQL - RIGHT JOIN
- MySQL - CROSS JOIN
- MySQL - FULL JOIN
- MySQL - 自連線
- MySQL - DELETE JOIN
- MySQL - UPDATE JOIN
- MySQL - UNION 與 JOIN
- MySQL 觸發器
- MySQL - 觸發器
- MySQL - 建立觸發器
- MySQL - 顯示觸發器
- MySQL - 刪除觸發器
- MySQL - BEFORE INSERT 觸發器
- MySQL - AFTER INSERT 觸發器
- MySQL - BEFORE UPDATE 觸發器
- MySQL - AFTER UPDATE 觸發器
- MySQL - BEFORE DELETE 觸發器
- MySQL - AFTER DELETE 觸發器
- MySQL 資料型別
- MySQL - 資料型別
- MySQL - VARCHAR
- MySQL - BOOLEAN
- MySQL - ENUM
- MySQL - DECIMAL
- MySQL - INT
- MySQL - FLOAT
- MySQL - BIT
- MySQL - TINYINT
- MySQL - BLOB
- MySQL - SET
- MySQL 正則表示式
- MySQL - 正則表示式
- MySQL - RLIKE 運算子
- MySQL - NOT LIKE 運算子
- MySQL - NOT REGEXP 運算子
- MySQL - regexp_instr() 函式
- MySQL - regexp_like() 函式
- MySQL - regexp_replace() 函式
- MySQL - regexp_substr() 函式
- MySQL 函式 & 運算子
- MySQL - 日期和時間函式
- MySQL - 算術運算子
- MySQL - 數值函式
- MySQL - 字串函式
- MySQL - 聚合函式
- MySQL 其他概念
- MySQL - NULL 值
- MySQL - 事務
- MySQL - 使用序列
- MySQL - 處理重複項
- MySQL - SQL 注入
- MySQL - 子查詢
- MySQL - 註釋
- MySQL - 檢查約束
- MySQL - 儲存引擎
- MySQL - 將表匯出到 CSV 檔案
- MySQL - 將 CSV 檔案匯入資料庫
- MySQL - UUID
- MySQL - 公共表表達式
- MySQL - ON DELETE CASCADE
- MySQL - Upsert
- MySQL - 水平分割槽
- MySQL - 垂直分割槽
- MySQL - 遊標
- MySQL - 儲存函式
- MySQL - SIGNAL
- MySQL - RESIGNAL
- MySQL - 字元集
- MySQL - 排序規則
- MySQL - 萬用字元
- MySQL - 別名
- MySQL - ROLLUP
- MySQL - 今日日期
- MySQL - 字面量
- MySQL - 儲存過程
- MySQL - EXPLAIN
- MySQL - JSON
- MySQL - 標準差
- MySQL - 查詢重複記錄
- MySQL - 刪除重複記錄
- MySQL - 選擇隨機記錄
- MySQL - SHOW PROCESSLIST
- MySQL - 更改列型別
- MySQL - 重置自動遞增
- MySQL - COALESCE() 函式
- MySQL 有用資源
- MySQL - 有用函式
- MySQL - 語句參考
- MySQL - 快速指南
- MySQL - 有用資源
- MySQL - 討論
MySQL - 簡介
什麼是資料庫?
資料庫用於儲存資料的集合(可以是結構化的或非結構化的)。每個資料庫都有一個或多個不同的 API 用於建立、訪問、管理、搜尋和複製它儲存的資料。
其他型別的儲存也可以用於管理資料,例如檔案系統上的檔案或記憶體中大型雜湊表,但是使用這些型別的系統,資料提取和寫入速度不會那麼快且容易。
如今,我們使用關係資料庫管理系統 (RDBMS) 來儲存和管理海量資料。在這種資料庫中,資料以結構化的方式儲存在不同的表中。這些表之間使用主鍵或其他稱為外部索引鍵的鍵建立關係。
關係資料庫管理系統 (RDBMS) 是一種軟體,它可以:
使您能夠實現具有表、列和索引的資料庫。
保證各個錶行之間的參照完整性。
自動更新索引。
解釋 SQL 查詢並組合來自各個表的資訊。
關係資料庫管理系統術語
在我們繼續解釋 MySQL 資料庫系統之前,讓我們回顧一下與資料庫相關的幾個定義。
資料庫 - 資料庫是具有相關資料的表的集合。
表 - 表是一個包含資料的矩陣。資料庫中的表看起來像一個簡單的電子表格。
列 - 一列(資料元素)包含一種相同型別的資料,例如郵政編碼列。
行 - 行(=元組、條目或記錄)是一組相關資料,例如一個訂閱的資料。
冗餘 - 為了使系統更快,重複儲存資料。
主鍵 - 主鍵是唯一的。一個鍵值在一個表中不能出現兩次。使用鍵,您只能找到一行。
外部索引鍵 - 外部索引鍵是兩個表之間的連線。
複合鍵 - 複合鍵(組合鍵)是由多列組成的鍵,因為一列不夠唯一。
索引 - 資料庫中的索引類似於書末的索引。
參照完整性 - 參照完整性確保外部索引鍵值始終指向現有行。
MySQL 資料庫
MySQL 是一款快速易用的 RDBMS,被許多大小企業使用。它由瑞典公司 MySQL AB 開發、銷售和支援。MySQL 如此受歡迎是有很多好理由的:
MySQL 是在開源許可下發布的。因此,您無需付費即可使用它。
MySQL 本身就是一個非常強大的程式。它處理了最昂貴和最強大的資料庫軟體包的大部分功能。
MySQL 使用眾所周知的標準 SQL 資料語言。
MySQL 可以在許多作業系統和許多語言(包括 PHP、PERL、C、C++、JAVA 等)上執行。
MySQL 執行速度非常快,即使在大型資料集上也能很好地工作。
MySQL 對 PHP(最受推崇的 Web 開發語言)非常友好。
MySQL 支援大型資料庫,一個表中最多可容納 5000 萬行或更多行。表的預設檔案大小限制為 4GB,但您可以將其(如果您的作業系統可以處理)增加到理論上的 800 萬 TB(TB)的限制。
MySQL 是可定製的。開源 GPL 許可證允許程式設計師修改 MySQL 軟體以適應他們自己的特定環境。
MySQL 的歷史
MySQL由Michael Widenius和David Axmark於1994年開始開發。
1995年5月23日首次內部發布。
1998年1月8日釋出Windows版本,適用於Windows 95和NT。
3.23版本:2000年6月釋出測試版,2001年1月釋出正式版。
4.0版本:2002年8月釋出測試版,2003年3月釋出正式版(包含聯合查詢)。
4.1版本:2004年6月釋出測試版,2004年10月釋出正式版。
5.0版本:2005年3月釋出測試版,2005年10月釋出正式版。
2008年2月26日,Sun Microsystems收購MySQL AB。
5.1版本:2008年11月27日釋出正式版。
2010年1月27日,Oracle收購Sun Microsystems。
5.5版本:2010年12月3日正式上市。
5.6版本:2013年2月5日正式上市。
5.7版本:2015年10月21日正式上市。
8.0版本:2018年4月19日正式上市。
開始之前
在開始本教程之前,您應該掌握我們PHP和HTML教程中介紹的基本知識。
本教程重點介紹在PHP環境中使用MySQL。本教程中提供的許多示例對PHP程式設計師都很有用。
我們建議您參考我們的PHP教程。