目? 錄
一、概述
1.數據庫(DB)分類
(1)關系型數據庫
(2)非關系型數據庫?
2.數據庫管理系統(DBMS)
3.SQL
(1)說明
(2)分類
二、MySQL?
1.概述
2.基本命令
3.表
4.sql 腳本
一、概述
1.數據庫(DB)分類
(1)關系型數據庫
- 依據關系模型創建的數據庫;
- 關系模型是“一對一、一對多、多對多”等關系模型。是二維表格及其之間的關系組成的一個數據組織;
- 關系模型包括 數據結構、操作指令集合、完整性約束。
(2)非關系型數據庫?
- 隨著互聯網 2.0 大規模數據集時代的發展,傳統關系型數據庫出現了許多難以克服的問題,由此出現了非關系型數據庫;
- NoSQL 泛指非關系型數據庫,是為了解決大規模數據集帶來的多重挑戰;
- NoSQL 區別于關系型數據庫,不保證關系數據的 ACID 特性;
- 優點:易擴展、高性能。
2.數據庫管理系統(DBMS)
- ?為了管理數據庫而誕生的軟件系統,一般具有存儲、截取、安全保障、備份等功能;
- 數據庫管理系統是數據庫系統的核心組成部分,用于對數據庫的操作與管理。實現數據庫對象的創建、存儲數據的增刪改查操作、數據庫用戶管理、權限管理等;
- 常見數據庫管理系統:MySQL、MS SQL Server、Oracle、DB2、SQLite、PostgreSQL、Sybase 等。
3.SQL
(1)說明
- 結構化查詢語言,簡稱 SQL。是一種數據庫查詢和程序設計語言。用于存儲數據以及查詢、更新、管理關系數據庫;
- 結構化查詢語言是高級的非過程化編程語言,允許用戶在高層數據結構上操作。不要求用戶指定數據的存放方法,不需要用戶了解具體的數據存放方式;
- 底層結構完全不同的數據庫系統,可以使用相同的結構化查詢語言作為數據輸入與管理的接口;
- 結構化查詢語言可以嵌套,所以具有靈活性。
(2)分類
- DQL:數據查詢語言,負責進行數據查詢而不會對數據本身進行修改的語句。保留字 SELECT 是 DQL 使用最多的,其他常用保留字有 FROM、WHERE、GROUP BY;
- DDL:數據定義語言,負責數據結構定義與數據庫對象定義的語言。由 CREATE、ALTER、DROP 三個語法組成;
- DML:數據操縱語言,負責對數據庫對象運行數據訪問工作的指令集。以 INSERT、UPDATE、DELETE 三種指令為核心;
- DCL:數據控制語言,負責對數據訪問權進行控制。可以控制特定用戶對數據表、查看表、預存程序、用戶自定義函數等數據庫對象的控制權。由 GRANT、REVOKE 兩個指令組成,GRANT 是授權語句,REVOKE 是撤銷授權語句;
- TPL:數據事務管理語言,確保被 DML 語句影響的表的所有行為及時更新。包括: BEGIN、TRANSACTION、COMMIT、ROLLBACK;
- CCL:指針控制語言,與存儲過程有關。DECLARE CURSOR、FETCH INTO、UPDATE WHERE CURRENT 用于對一個或多個表單獨操作。
二、MySQL?
1.概述
- 是一個關系型數據庫管理系統。由瑞典 MySQL AB 公司開發,后該公司被 Sun 公司收購,Sun 公司后又被 Oracle 公司收購;
- 特點:
- 有開源版本和收費版本;
- 支持大型數據庫;
- 使用標準的 SQL 數據庫語言格式;
- 多系統支持。
2.基本命令
- 查看當前數據庫管理系統中有哪些數據庫:【show databases;】;
- 創建數據庫,名稱為 test:【create database test;】;
- 刪除 test 數據庫:【drop database test;】;
- 使用 test 數據庫:【use test;】;
- 查看當前使用的數據庫:【select database();】;
- 查看當前數據庫中的表:【show tables;】;
- 退出 mysql:
- 【exit】;
- 【quit】;
- 【Ctrl + C】。
- 查看當前 mysql 版本號:
- 登錄狀態:【select version();】;
- 未登錄狀態:【mysql --version】。
3.表
表是數據庫存儲數據的基本單元。數據庫存儲數據時,?是將數據存儲在表對象當中;
表中的行和列:
行:記錄;
列:字段。
字段包含的屬性:字段名、數據類型、數據長度、約束;
4.sql 腳本
文件擴展名是【.sql】的文件就是 sql 腳本。該文件內有大量的 SQL 語句,執行 sql 腳本就是批量執行 SQL 語句;
用 cmd 執行 sql 腳本:
登錄 mysql;
創建一個數據庫;
使用該數據庫;
【source + sql 腳本的絕對路徑】來執行 sql 腳本。
使用其他 MySQL 客戶端工具也可以執行 sql 腳本,但是?cmd 的 source 命令可以支持大文件,不受文件大小的限制。?