数据库















「数据库」的各地常用別名
中国大陸
數據庫
港臺
資料庫


Emp Tables (Database).PNG

数据库,簡而言之可視為電子化的檔案櫃——儲存电子檔案的處所,使用者可以對檔案中的資料執行新增、擷取、更新、刪除等操作[1]


所謂「資料庫」係以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。




目录






  • 1 数据库管理系统


  • 2 类型


    • 2.1 关系数据库


    • 2.2 非关系型数据库(NoSQL)


      • 2.2.1 键值(key-value)数据库






  • 3 数据库模型


    • 3.1 架構


    • 3.2 数据库索引


    • 3.3 数据库操作:事务




  • 4 參考文獻


  • 5 参见





数据库管理系统



資料庫管理系统(英语:Database Management System,簡稱DBMS)是为管理資料庫而設計的电腦軟體系統,一般具有儲存、擷取、安全保障、備份等基礎功能。資料庫管理系統可以依據它所支援的資料庫模型來作分類,例如關聯式、XML;或依據所支援的電腦類型來作分類,例如伺服器群集、行動電話;或依據所用查詢語言來作分類,例如SQL、XQuery;或依據性能衝量重點來作分類,例如最大規模、最高執行速度;亦或其他的分類方式。不論使用哪種分類方式,一些DBMS能够跨類別,例如,同時支援多種查詢語言。



类型



关系数据库




  • MySQL


    • MariaDB(MySQL的代替品[2],英文维基百科从MySQL转向MariaDB[3]


    • Percona Server(MySQL的代替品[4] · [5]



  • PostgreSQL

  • Microsoft Access

  • Microsoft SQL Server

  • Google Fusion Tables英语Google Fusion Tables

  • FileMaker

  • Oracle資料庫

  • Sybase

  • dBASE

  • Clipper

  • FoxPro

  • foshub


幾乎所有的資料庫管理系統都配備了一個開放式資料庫連接(ODBC)驅動程式,令各個資料庫之間得以互相整合。



非关系型数据库(NoSQL)





  • BigTable(Google)

  • Cassandra

  • MongoDB

  • CouchDB



键值(key-value)数据库




  • Apache Cassandra(为Facebook所使用[6]):高度可扩展[7]

  • Dynamo


  • LevelDB(Google)



数据库模型



  • 物件模型

  • 层次模型(轻量级数据访问协议)

  • 网状模型(大型数据储存)

  • 关系模型

  • 面向对象模型

  • 半结构化模型


  • 平面模型(表格模型,一般在形式上是一个二维陣列。如表格模型数据Excel)



架構


資料庫的架構可以大致區分為三個概括層次:內層、概念層和外層。



  • 內層:最接近實際儲存體,亦即有關資料的實際儲存方式。

  • 外層:最接近使用者,即有關個別使用者觀看資料的方式。

  • 概念層:介於兩者之間的間接層。[8]



数据库索引



資料索引的觀念由來已久,像是一本書前面幾頁都有目錄,目錄也算是索引的一種,只是它的分類較廣,例如車牌、身份証字號、條碼等,都是一個索引的號碼,當我們看到號碼時,可以從號碼中看出其中的端倪,若是要找的人、車或物品,也只要提供相關的號碼,即可迅速查到正確的人事物。


另外,索引跟欄位有著相應的關係,索引即是由欄位而來,其中欄位有所謂的關鍵欄位(Key Field),該欄位具有唯一性,即其值不可重複,且不可為"空值(null)"。例如:在合併資料時,索引便是扮演欲附加欄位資料之指向性用途的角色。故此索引為不可重複性且不可為空。



数据库操作:事务



事务(transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。
事务的ACID特性:



  • 基元性(atomicity)

  • 一致性(consistency)

  • 隔离性(isolation)

  • 持续性(durability)


事务的并发性是指多个事务的并行操作轮流交叉运行,事务的并发可能会存取和存储不正确的数据,破坏交易的隔离性和数据库的一致性。


网状数据模型的数据结构
网状模型
满足下面两个条件的基本层次联系的集合为网状模型。
1. 允许一个以上的结点无双亲;
2. 一个结点可以有多于一个的双亲。



參考文獻





  1. ^ 陳春旭、余明興、李建全 譯:《資料庫系統概論》第四版,儒林圖書有限公司,1986年7月,第3頁


  2. ^ mariadb. [2013-01-07]. 


  3. ^ Wikipedia moving from MySQL to MariaDB. [2013-01-07]. 


  4. ^ https://drupal.org/node/2062399


  5. ^ 存档副本. [2013-08-13]. (原始内容存档于2013-08-24). 


  6. ^ 存档副本. [2013-01-07]. (原始内容存档于2013-01-25). 


  7. ^ http://cassandra.apache.org/


  8. ^ 陳春旭、余明興、李建全譯,《資料庫系統概論》第四版,儒林,1986年7月,第29頁




参见




  • 資料庫理論

  • 資訊科技稽核


  • LDAP(轻量级数据访问协议)


  • SQL(结构化查询语言)

  • 資料庫管理系統

















数据库管理系统(DBMS) 查看 · 讨论 · 编辑

概念
数据库 ·
数据模型 ·
数据库存储结构英语Database storage structures ·
关系 (数据库) ·
关系模型 ·
分布式数据库 ·
ACID ( 原子性英语Atomicity (database systems) · 一致性· 隔離性· 持久性英语Durability (database systems) ) ·
Null值
关系模型 ·
数据库规范化 ·
數據庫完整性 ·
實體完整性 ·
參照完整性英语Referential integrity ·
关系数据库管理系统 
主键 · 外键 · 代理键 · 超键 · 候选键 



数据库组件
触发器 ·
视图 ·
数据库表 ·
指标 (数据库) ·
事务日志英语Transaction log ·
数据库事务 ·
并发控制 ·
乐观锁 ·
悲观锁 ·
数据库索引 
存储程序 ·
資料庫分割英语Partition (database)



SQL

分类:
数据查询语言(DQL) - 資料定義語言(DDL) - 資料操縱語言(DML) - 資料控制語言(DCL)

指令:SELECT ·
INSERT ·
UPDATE ·
MERGE ·
DELETE ·
JOIN ·
UNION英语Union (SQL) ·
CREATE ·
DROP ·
Begin work ·
COMMIT ·
ROLLBACK ·
TRUNCATE ·
ALTER

安全:
SQL資料隱碼攻擊 ·
參數化查詢



数据库管理系统的实现

实现类型
关系数据库 ·
檔案型資料庫 ·
Deductive ·
維度化資料庫 ·
階層式 ·
圖形資料庫 ·
NoSQL·
对象数据库 ·
物件關聯式資料庫 ·
Temporal ·
XML資料庫



数据库产品
对象型(对比) ·
关系型(对比)



数据库组件
数据查询语言 ·
查詢最佳化器 ·
查詢計畫 ·
嵌入式SQL ·
ODBC ·
JDBC ·
OLE DB








Popular posts from this blog

Lambaréné

Chris Pine

Kashihara Line