數據庫是個啥東西

1.數據存儲階段

1、人工管理階段

  • 結繩記事
數據庫是個啥東西

  • 甲骨
數據庫是個啥東西

數據庫是個啥東西

人工管理階段,數據都是靠人工進行整理和保存,使用起來很不方便。不便於查詢、共享、保存。

2、文件系統階段

  • 磁盤
數據庫是個啥東西

文件系統階段,將數據存儲在磁盤上,數據都是以文件的形式出現,通過文件系統管理。相對於人工管理方便的多,但是在查詢數據內容時,還不是很方便。

3、數據庫系統階段

  • 數據庫

數據庫是指長期存儲在計算機內、有組織的數據集合。簡而言之,數據庫就是一個存儲數據的地方。表是數據庫中存儲數據的基本單位,數據按照分類存儲到不同的表中,能夠非常高效的查詢其中的數據。

網頁中顯示的商品信息
數據庫是個啥東西

數據庫中存儲的商品數據
數據庫是個啥東西

真實的商品
數據庫是個啥東西


2.RDBMS-關係型數據庫系統

Relational Database Management System

關係型數據庫系統

通過表來表示關係

  • 當前主要使用兩種類型的數據庫:關係型數據庫、非關係型數據庫,我們主要學習主流的關係型數據庫
  • 所謂的關係型數據庫RDBMS,是建立在關係模型基礎上的數據庫,藉助於集合代數等數學概念和方法來處理數據庫中的數據
  • 查看數據庫排名:https://db-engines.com/en/ranking
數據庫是個啥東西

  • 關係型數據庫的主要產品:
    • oracle:在以前的大型項目中使用,銀行,電信等項目
    • mysql:web時代使用最廣泛的關係型數據庫
    • ms sql server:在微軟的項目中使用
    • sqlite:輕量級數據庫,主要應用在移動平臺

關係型數據庫核心元素

  • 數據行(一條記錄)
  • 數據列(字段)
  • 數據表(數據行的集合)
  • 數據庫(數據表的集合,一個數據庫中能夠有 n 多個數據表)


3.SQL-結構化查詢語言

Structured Query Language

結構化查詢語言

在數據庫中進行操作的語言,稱為sql,結構化查詢語言,當前關係型數據庫都支持使用sql語言進行操作,也就是說可以通過 sql 操作 oracle,sql server,mysql,sqlite 等等所有的關係型的數據庫

  • sql語言主要分為:
    • DQL:數據查詢語言,用於對數據進行查詢,如select
    • DML:數據操作語言,對數據進行增加、修改、刪除,如insert、udpate、delete
    • TPL:事務處理語言,對事務進行處理,包括begin transaction、commit、rollback
    • DCL:數據控制語言,進行授權與權限回收,如grant、revoke
    • DDL:數據定義語言,進行數據庫、表的管理等,如create、drop
    • CCL:指針控制語言,通過控制指針完成表的操作,如declare cursor
  • 對於測試工程師來講,重點是數據的查詢,需要熟練編寫DQL,其它語言如TPL、DCL、CCL瞭解即可
  • SQL 是一門特殊的語言,專門用來操作關係數據庫
  • 不區分大小寫

MySQL 簡介

  • 點擊查看MySQL官方網站
  • MySQL是一個關係型數據庫管理系統,由瑞典MySQL AB公司開發,後來被Sun公司收購,Sun公司後來又被Oracle公司收購,目前屬於Oracle旗下產品

特點

  • 使用C和C++編寫,並使用了多種編譯器進行測試,保證源代碼的可移植性
  • 支持多種操作系統,如Linux、Windows、AIX、FreeBSD、HP-UX、MacOS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris等
  • 為多種編程語言提供了API,如C、C++、Python、Java、Perl、PHP、Eiffel、Ruby等
  • 支持多線程,充分利用CPU資源
  • 優化的SQL查詢算法,有效地提高查詢速度
  • 提供多語言支持,常見的編碼如GB2312、BIG5、UTF8
  • 提供TCP/IP、ODBC和JDBC等多種數據庫連接途徑
  • 提供用於管理、檢查、優化數據庫操作的管理工具
  • 大型的數據庫。可以處理擁有上千萬條記錄的大型數據庫
  • 支持多種存儲引擎
  • MySQL 軟件採用了雙授權政策,它分為社區版和商業版,由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇MySQL作為網站數據庫
  • MySQL使用標準的SQL數據語言形式
  • Mysql是可以定製的,採用了GPL協議,你可以修改源碼來開發自己的Mysql系統
  • 在線DDL更改功能
  • 複製全局事務標識
  • 複製無崩潰從機
  • 複製多線程從機


分享到:


相關文章: