一. 簡介
1. 數據庫基本概念
(1). 數據庫(DataBase:DB):數據庫是是按照數據結構來組織、存儲和管理數據的倉庫。---->存儲和管理數據的倉庫.
(2). 數據庫管理系統(Database Management System:DBMS):是專門用於管理數據庫的計算機系統軟件。數據庫管理系統能夠為數據庫提供數據的定義、建立、維護、查詢和統計等操作功能,並完成對數據完整性、安全性進行控制的功能。
(3). MIS: 管理信息系統。
注意:我們一般說的數據庫,就是指的DBMS: 數據庫服務器。
2. 數據庫技術發展歷程
階段一:
層次數據庫和網狀數據庫技術階段。使用指針來表示數據之間的聯系。
階段二:
關系型數據庫技術階段。經典的里程碑階段,代表的DBMS有:Oracle、DB2、MySQL、SQL Server、SyBase等。
階段三:
后關系型數據庫技術階段。由於關系型數據庫中存在數據模型、性能、拓展伸縮性差的缺點,所以出現了:
ORDBMS:面向對象數據庫技術。
NoSQL :結構化數據庫技術。
隨着大數據的不斷發展,非關系型的數據庫現在成了一個極其熱門的新領域,非關系數據庫產品的發展非常迅速,出色的NoSQL數據庫分為4類:
(1). 鍵值存儲數據庫:Oracle BDB、Redis、BeansDB
(2). 列式儲數數據庫:HBase、Cassandra,Riak
(3). 文檔型數據庫:MongoDB、CouchDB
(4). 圖形數據庫:Neo4J、InfoGrid、Infinite Graph
3. 常見關系型數據庫
數據庫系統 所屬公司
--------------------------------------
Oracle Oracle
DB2 IBM
SQL Server 微軟
MySQL AB-->SUN-->Oracle
---------------------------------------------------------------------
Oracle:運行穩定,可移植性高,功能齊全,性能超群。適用於大型企業領域。
DB2:速度快、可靠性好,適於海量數據,恢復性極強。適用於大中型企業領域。
SQL Server:全面,效率高,界面友好,操作容易,但是不跨平台。適用於中小型企業領域。
MySQL:開源,體積小,速度快。適用於中小型企業領域。
4. 結構化查詢語言(Structured Query Language,即SQL)
SQL是關系型數據庫標准語言,其特點:簡單,靈活,功能強大。SQL包含6個部分:
(1). 數據查詢語言(DQL):
其語句,也稱為“數據檢索語句”,用以從表中獲得數據,確定數據怎樣在應用程序給出。保留字SELECT是DQL(也是所有SQL)用得最多的動詞,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。這些DQL保留字常與其他類型的SQL語句一起使用。
(2). 數據操作語言(DML):
其語句包括動詞INSERT,UPDATE和DELETE。它們分別用於添加,修改和刪除表中的行。也稱為動作查詢語言。
(3). 事務處理語言(TPL):
它的語句能確保被DML語句影響的表的所有行及時得以更新。TPL語句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。
(4). 數據控制語言(DCL):
它的語句通過GRANT或REVOKE獲得許可,確定單個用戶和用戶組對數據庫對象的訪問。某些RDBMS可用GRANT或REVOKE控制對表單個列的訪問。
(5). 數據定義語言(DDL):
其語句包括動詞CREATE和DROP。在數據庫中創建新表或刪除表(CREAT TABLE 或 DROP TABLE);為表加入索引等。DDL包括許多與人數據庫目錄中獲得數據有關的保留字。它也是動作查詢的一部分。
(6). 指針控制語言(CCL):
它的語句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用於對一個或多個表單獨行的操作。
書寫規則:
1.在MySQL數據庫中,SQL語句大小寫不敏感
2.SQL語句可單行或多行書寫
3.在SQL語句中,關鍵字不能跨多行或縮寫
4.為了提高可讀性,一般關鍵字大寫,其他小寫
5.空格和縮進使程序易讀
5. 關系表概念
(1). 什么是表?
我們說MySQL是一種關系型數據庫。關系數據庫最重要的概念就是表。表具有固定的列數和任意的行數,在數學上稱為“關系”。
A: 二維表是同類實體的各種屬性的集合,每個實體對應於表中的一行,在關系中稱為元組,相當於通常的一條記錄;
B: 表中的列表示屬性,稱為Field,相當於通常記錄中的一個數據項,也叫列、字段。
(2). 案例
二. 目錄
第八節:SQLServer函數大全(一)--字符串函數、數學函數
第九節:SQLServer函數大全(二)--類型轉換函數、日期函數
第十節:數據庫的備份和恢復(SQLServer和MySQL)
第十四節:SQLServer觸發器詳解(概述、工作原理、應用)
第十六節:SQLServer視圖的概述、基本操作、EFCore中映射和使用
第十八節:SQLServer剖析表分區(分區函數、分區索引、分區方案等)-未完
第十九節:SQLServer通過發布訂閱實現主從同步(讀寫分離)詳解
第二十節:MySQL修改/忘記密碼的解決方案(Linux和Windows)
!
- 作 者 : Yaopengfei(姚鵬飛)
- 博客地址 : http://www.cnblogs.com/yaopengfei/
- 聲 明1 : 如有錯誤,歡迎討論,請勿謾罵^_^。
- 聲 明2 : 原創博客請在轉載時保留原文鏈接或在文章開頭加上本人博客地址,否則保留追究法律責任的權利。