1. 程式人生 > >數據庫學習 day1 認識數據庫

數據庫學習 day1 認識數據庫

必須 原因 不同 strong 支持 pri 物理 容器 信息

從SQL的角度而言,數據庫是一個以某種有組織的方式儲存的數據集合。

我們可以把它比作一個“文件櫃”,這個“文件櫃”是一個存放數據的物理位置,不管數據是什麽,也不管數據是如何組織的。

下面介紹幾個術語

數據庫(database)

保存有組織的數據容器

註意:數據庫和實際使用的軟件無關,數據庫軟件應稱為數據庫管理系統(DBMS)。

表(table)

某種特定類型數據的結構清單。

儲存在表中的數據硬是同一種類型的數據或清單。絕不應該將用戶的清單和訂單的清單放在一個表中,否則會造成檢索和訪問變得很困難,

正確的做法是創建兩個表,各存一個清單。

註意:表名在同一個數據庫中不能重復

模式(schema)

關於數據庫與表的布局以及特性的信息。這些信息包括定義數據在表中如何儲存,包含儲存什麽樣的數據,數據如何分解,各部分信息如何命名等。

列(cloumn)

表由一個列或多個列組成。用於存儲表中某部分的信息。

例如在客戶表中,一列存儲顧客的編號,另一列存儲顧客的姓名,而地址、城市、省等信息都存在各自的列中。

分解數據

正確的將數據分解為各個列很重要,通過分解這些數據,才有可能利用特定的列對數據進行分類和過濾(如找出特定省或特定城市的顧客)。

數據庫中的每一列都有相應的數據類型(datatype),它定義了列中可存儲的數據種類。選擇合適的數據類型,可以正確的分類各種數據,

並在優化磁盤方面起到了重要的作用。因此,在創建表時需要多加註意所用的數據類型。

註意:數據類型及其名稱是SQL不兼容的一個主要原因。許多高級的數據類型沒有,更糟的是偶然會有相同的數據類型在不同的DBMS中具

有不同的名稱,對此用戶毫無辦法,要做的是在創建表結構時就應該註意這些差異。

行(row)

表中的一個記錄(record),通常記錄和行是可以交替使用的,但在術語中我們還是稱之為行。

主鍵(primary key)

每一行都應該有一列(或幾列)可以唯一的標識自己。例如,顧客表有顧客編號,學生有學號,公民有唯一的身份ID。

表中的任何列都可以作為主鍵,只要滿足以下條件

  • 任意兩行都不具有相同的主鍵值
  • 每一行都必須擁有一個組件值(主鍵值不允許NULL值)
  • 主鍵列中的值允許修改和更新;
  • 主鍵值不能重用(如果某行被刪除,他的主鍵值不能賦值給其他新行)

還有一種外鍵,將在之後的課程中介紹

SQL(structured query language)

SQL是一種專門用來與數據溝通的語言。

與其他語言(如JAVA,C++,PHP等)不同,SQL只有很少的語句,而且這些詞具有很強的描述性。幾乎所有重要的DBMS都

支持SQL語言,因此學會它你幾乎可以和所有的數據庫打交道。

SQL雖然看上去很簡單,但實際上是一種強力的語言,靈活使用,可以進行復雜和高級的數據庫操作。

數據庫學習 day1 認識數據庫