數據庫是一個以某種有組織的方式存儲的數據集合。數據庫(database)是保存有組織的數據的容器。數據庫管理系統(DBMS)是一種數據庫軟件,MySQL是一種DBMS,即它是一種數據庫軟件,作者使用的數據庫管理系統是MySQL,除做特别說明外,作者使用的所有數據庫軟件都為MySQL。
下面介紹數據庫的一些基本概念,例如“表”、“模式”、“列”、“行”、“主鍵”等的一些概念。
表(table) 某種特定類型數據的結構化清單,是一種結構化的文件,可用來存儲某種特定類型的數據。
模式(schema) 關于數據庫和表的布局及特性的信息。
列(column) 表中的一個字段。所有表都是由一個或多個列組成的。
行(row) 表中的一個記錄。
主鍵(primary key)一列(或一組列),其值能夠唯一标識表中每一行。表中的任何列都可以作為主鍵,隻要它滿足以下條件:
- 任意兩行都不具有相同的主鍵值;
- 每一行都必須具有一個主鍵值(主鍵列不允許NULL 值);
- 主鍵列中的值不允許修改或更新;
- 主鍵值不能重用(如果某行從表中删除,它的主鍵不能賦給以後的新行)
結構化查詢語言
SQL是結構化查詢語言(Structured Query Language)的縮寫。SQL是一種專門用來與數據庫通信的語言。
SQL語句的優點
- SQL不是某個特定數據庫供應商專有的語言。幾乎所有重要的DBMS都支持SQL,所以,學習此語言使你幾乎能與所有數據庫打交道;
- SQL簡單易學。它的語句全都是由描述性很強的英語單詞組成,而且這些單詞的數目不多;
- SQL盡管看上去很簡單,但它實際上是一種強有力的語言,靈活使用其語言元素,可以進行非常複雜和高級的數據庫操作。
MySQL的優點
- 學習成本低,MySQL是開放源代碼的,一般可以免費使用;
- 代碼運行性能快,MySQL執行很快;
- 信賴度高,某些非常重要和聲望很高的公司、站點使用MySQL,這些公司和站點都用MySQL來處理自己的重要數據;
- 簡單易用,MySQL很容易安裝和使用。
為了指定用戶登錄名root,應該使用mysql -u root。-u 後面跟着我們所要登錄的用戶名,為了給出用戶名、主機名、端口和口令,應該使用mysql -u root -p -h myserver -P 123456,-P 後面跟登錄密碼。
完整的命令行選項和參數列表可用mysql --help獲得。
- 命令輸入在 mysql> 之後;
- 命令用 ; 或 \g 結束,換句話說,僅按Enter不執行命令;
- 輸入 help 或 \h 獲得幫助,也可以輸入更多的文本獲得特定命令的幫助(例如,輸入help select可獲得使用SELECT語句的幫助);
- 輸入 quit 或 exit 退出命令行實用程序。
數據類型(datatype) 所容許的數據的類型。每個表列都有相應的數據類型,它限制(或容許)該列中存儲的數據,常見的數據類型有字符串、數值、日期和時間、二進制數據類型。
字符串數據類型
數值數據類型
日期和時間數據類型
二進制數據類型
,