1、資料庫簡介-》解決的問題:持久化存儲,優化讀寫,保證數據的有效性-》關係型資料庫: 基於E-R模型(數據關係模型) 使用sql語言進行操作-》分類:文檔型sqlite,服務型-》資料庫設計 三範式:列不可拆分,唯一標識,引用主鍵 關係及存儲: 1對1:1個對象A對應著1個對象B,1個對象B對應著 ...
1、資料庫簡介
-》解決的問題:持久化存儲,優化讀寫,保證數據的有效性
-》關係型資料庫:
基於E-R模型(數據關係模型)
使用sql語言進行操作
-》分類:文檔型sqlite,服務型
-》資料庫設計
三範式:列不可拆分,唯一標識,引用主鍵
關係及存儲:
1對1:1個對象A對應著1個對象B,1個對象B對應著1個對象A
關係可以存入A或B對象中(例如:國家規定的夫妻關係)
1對多:1個對象A對應著n個對象B,1個對象B對應著1個對象A
關係存入B對象中(學生和班級,一個班級可以有多個學生,但一個學生只許有一個班級)
多對多:1個對象A對應著n個對象B,1個對象B對應著m個對象A
關係存入新建的一個關係表中(學生和選課, 1個學生可以有多門選課,一門選課可以有多個學生)
2、登錄方式
-》開啟服務
-》登錄方式及設置
-》添加用戶名
-》連接區域網中的資料庫:啟用TCP/IP協議
3、界面操作
-》資料庫:創建,刪除,分離,附加,生成腳本(架構,數據)
-》表:創建、修改、刪除
欄位類型介紹:int,bit,datetime,decimal(5,2),char/varchar/nvarchar
字元串類型n的區別:有n表示unicode編碼,每個字元占一個位元組;
沒有n表示非unicode編碼,英文或數字占一個位元組,中文占兩個位元組
字元串類型var的區別:有var表示可變長度
沒有var表示不可變長度,如果長度不夠,會在末尾補空格
如果選擇int值時,可以設置標識:此列的值為系統幫助維護,更輕鬆的實現唯一標識
-》約束:實現數據的有效性檢查
主鍵,非空,惟一,預設,檢查,外鍵
-》示例:
班級表ClassInfo(編號cId,名稱cTitle nvarchar(10))
學生表(編號,姓名,性別,出生日期,電話,郵箱,班級)
4、腳本操作
-》不區分大小寫,字元串使用單引號,末尾不需要加分號
-》按照功能分類:
DDL:數據定義語言,用於進行各種資料庫對象的創建,主要操作包括create、alter、drop
DML:數據管理語言,用於對錶數據的添加、修改、刪除、查詢,主鍵操作包括insert、update、delete、select
DCL:數據控制語言,用於進行許可權分配等
-》註釋:--單行註釋,/**/多行註釋
-》資料庫:創建、刪除
可以通過查看master資料庫中的sysdatabases表,來瞭解當前存在的資料庫
create database 資料庫名
on primary
(
name='stuDB_data', -- 主數據文件的邏輯名稱
filename='D:\stuDB_data.mdf', -- 主數據文件的物理名稱
size=5mb, --主數據文件的初始大小
maxsize=100mb, -- 主數據文件增長的最大值
filegrowth=15%--主數據文件的增長率
)
log on
(
name='stuDB_log',
filename='D:\stuDB_log.ldf',
size=2mb,
filegrowth=1mb
)