1 數據庫概述 Database
定義:數據的倉庫;其實就是文件;DBMS(數據庫管理系統)\RDBMS
數據庫特點:海量存儲、查找數據快、併發性問題控制、安全性、數據完整性(保存在數據庫中的數據是正確的、真正的)
數據庫分類:
- MySQL:速度很快,適合對數據要求並不是十分嚴格的地方,去掉了很多中小型企業中不常用的功能;
- MSSQLServer:與.Net結合很好,只能運行在windows平臺下,大數據量、大交易量表現並不是十分好,功能比MySql多;
- 其他:DB2(大型)、Oracle(大型)、Access(文件)、SQLite(及其輕量級)、Sybase等。
1.1 數據庫中的概念
1 數據庫Database,不同類的數據應該放到不同的數據庫中
- 便於對各個數據類別,進行個性化管理
- 避免命名衝突
- 安全性更高
2 Table(表):關係數據庫中的【關係】指的就是表
不同的貨物要放到各自的貨物架,將這種區域叫做“表”(Table)。不同的表根據放的數據不同進行空間的優化,找起來方便
3 列(Column)、字段(Field)、行(Row)元組
4 用表格格式化數據:即便是引入了自動識別設備也是很容易識別
2 主鍵(Primary Key)
主鍵就是數據行的唯一標識,不會重複的列才能當主鍵。一個表可以沒有主鍵但是會難以處理,因此沒有特殊理由的表都要設定主鍵;
主鍵有兩種選擇:業務主鍵和邏輯主鍵;
業務主鍵是使用有業務意義的字段做主鍵,比如省份證號、銀行卡號等;
邏輯主鍵是使用沒有任何業務意義的字段做主鍵,完全給程序看,業務人員不會看的數據。因爲很難保證業務主鍵不重複、不會變化,因此推薦使用邏輯主鍵;
特點:不能重複 、 不能爲空null
選擇主鍵的時候,根據列存儲的信息不同,可分爲:業務主鍵、邏輯主鍵(推薦使用邏輯主鍵)
總結:選擇什麼樣的列作爲主鍵:
- 不允許爲空的列
- 沒有重複的列
- 與實際業務沒有關係的列(邏輯主鍵)
- 穩定的列(列中保存的數據不經常修改)
- 選擇單列作爲主鍵(當通過多列共同唯一標識表中一條記錄時,此時可以選擇多列來工作組成一個主鍵,這種主鍵叫做:組合主鍵、複合主鍵、複合主鍵、聯合主鍵)一般不推薦使用組合主鍵。
- 儘量選擇數字類型作爲主鍵,不要選擇字符串,或者數據類型比較大的列做作爲主鍵
3 外鍵(ForeignKey 數據冗餘)
數據冗餘問題
- 造成了存儲空間的浪費
- 更新異常、刪除異常
所以一般情況下不允許在表中出現數據冗餘。
解決方法:
把原來表中的數據拆分成多個表來存儲。
當把表中的信息拆分成多個表來存儲的時候會有一些問題:如何將這兩張表中的數據關聯起來?答:使用主鍵和外鍵來進行關聯。使用主外鍵就能將不同表中的數據關聯起來。
什麼是外鍵,如何通過主外鍵將表中的數據關聯起來?
當把數據拆分成兩張表來存儲的時候,每個表中都有自己的主鍵。
其中一張表中,除了主鍵外,又多了一列,這列用來引用另一張表中的主鍵,那麼這列就是第一張表中“外鍵列”,有外鍵列的表就叫做“外鍵表”,相對來說,主鍵被引用的那張表就叫做“主鍵表”
因爲外鍵列中引用的是另外一張表中的主鍵列的數據,所以外鍵列中的數據是不能隨便寫的,必須是在另外一張表中的主鍵列中已經存在的數據。
4 鏈接數據庫服務
- 打開服務,在運行中輸入“services.msc”
- 啓動服務
- 打開 SQL Server Management Studio
print @@version --查看數據庫版本信息
安裝好數據庫以後怎麼啓用sa賬號,來訪問數據庫?
1、先用window賬號登陸數據庫;
2、啓用windows身份驗證方式和sql server身份驗證方式
2.1 選擇【實例】-右鍵【屬性】-【安全性】-【服務器身份驗證】-【sql server和windows身份驗證(選中)】-確定-重啓SQL Server服務。
3、 啓用sa賬號;
【安全性】-【登陸名】-【sa】-【右鍵】-【屬性】-【狀態】-【登陸】-【啓用】
4、修改sa密碼
【安全性】-【登陸名】-【sa】-【右鍵】-【屬性】-【常規】-【改密碼】(不要勾選“強制密碼策略”)-【確定】
5 卸載Sqlserver數據庫
5.1 先卸載
帶sqlserver全卸載
5.2 刪除安裝目錄
5.2 註冊表中刪除
【HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server】刪除
【HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server 2008】 等全部刪除
6 數據庫的遷移
- 首先找到數據庫文件所在路徑
2. 數據庫分離操作
方法:選中要分離的數據庫->鼠標右擊->選擇【任務】->【分離】->選中【刪除連接】複選框->【確定】
- 附加數據庫
方法:選中數據庫->鼠標右擊->選擇【附加】
** 如果附加失敗,需要修改數據庫文件 的權限