SQL Server 數據庫基本記錄(一)

寫在前面

這段時間因爲任務須要 SQL Server 2008 R2 數據庫,因而便學習了一下,在此記錄學習過程當中重要的東西。sql

簡單介紹

SQL

  • 全稱:Structured Query Language (結構化查詢語言)
  • 是一種數據庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關係數據庫系統

T-SQL

  • 全稱:Transact-SQL
  • 是標準 SQL 程式設計語言的加強版,它是用來讓應用程式與 SQL Server 溝通的主要語言

二者可簡單理解爲:T-SQL 是 SQL Server 支持的 SQL 語法,非軟件。主要是微軟對數據庫操做增長的新語法數據庫

T-SQL 語言主要組成部分

  • DML (數據操做語言) 用於查詢、插入、修改和刪除數據庫中的數據等
SELECT,INSERT,UPDATE,DELETE
複製代碼
  • DDL (數據定義語言) 用於在數據庫系統中建立數據庫、表、視圖、索引等
CREATE DATABASE,DROP DATABASE
複製代碼
  • DLC (數據控制語言) 用於控制存取許可、權限等
GRANT,REVOKE
複製代碼
  • 其餘(包括變量說明、內部函數等)

數據庫相關

  • 物理存儲結構(數據庫文件在磁盤上的存儲形式) -- 主數據文件:xx.mdf -- 輔助數據文件:xx.ndf -- 日誌文件:xx.ldf函數

  • 邏輯存儲結構 由數據表、視圖、索引等不一樣的數據庫對象組成,分別用於存儲特定信息並支持特定功能學習

  • 數據庫命名規則: -- 第一個字符必須是 字母_ @ #。 -- 數據庫名稱 不能是 T-SQL 的保留字 -- 不容許嵌入空格或其餘特殊字符spa

  • 數據庫分類 -- 系統數據庫(中央管理機構) E.g:master,model,msdb,resource -- 用戶數據庫(老百姓):用戶本身建立的數據庫設計

  • 建立數據庫須要指定的屬性 -- 文件名稱、存放位置、初始空間大小、屬於哪一個文件組 -- 文件增加:按百分比或實際大小制定增加速度 -- 文件容量設置:能夠指定文件增加的最大值或不限制 -- 兼容級別:版本號 -- 數據庫是否只讀:默認 flase -- 限制訪問:MULTI_USER (正常狀態)、SINGLE_USER (維護操做的狀態)、RESTRICTED_USER日誌

數據庫基本操做命令

如下所有爲使用 SQL 語句操做,無視圖操做code

  1. 一般,執行命令時,最開始都須要指向操做的對象,而且添加批處理的標誌(執行)
USE 對象(數據庫名稱)

E.g:
- USE master -- 指向當前使用的數據庫 master
- USE E_Market -- 指向當前使用的數據庫 E_Market

完整實例:
USE E_Market -- 指向當前使用的數據庫 E_Market
GO -- 批處理的標誌(執行命令最後都需此命令)
複製代碼
  1. 建立數據庫(包含數據文件和日誌文件)
USE master
GO
CREATE DATABASE 數據庫名
ON PRIMARY --主文件組
-- 主數據文件
(
	NAME='E_Market_data',	-- 主文件邏輯文件名
	FILENAME='F:\Project\E_Market_data.mdf',	-- 主文件物理文件名,包含存放位置
	SIZE=5MB,	-- 主文件初始大小
	MAXSIZE=100MB, -- 主文件增加的最大值
	FILEGROWTH=15%	--主文件的增加率
),
-- 以上爲以第一個文件組(主文件組)

FILEGROUP FG	-- 第二個文件組(輔助數據文件)
(
	NAME='FG_E_Market_data',	-- 輔助文件邏輯文件名
	FILENAME='F:\Project\FG_E_Market_data.ndf',	-- 輔助文件物理文件名,包含存放位置
	SIZE=3MB,	-- 輔助文件初始大小
	MAXSIZE=7MB, -- 輔助文件增加的最大值
	FILEGROWTH=0	--輔助文件不啓用自動增加
)

LOG ON	-- 日誌文件不屬於任何文件組
(
	NAME='E_Market_log', -- 日誌文件邏輯文件名
	FILENAME='F:\Project\E_Market_log.ldf',	-- 日誌物理文件名,包含存放位置
	SIZE=5MB,	-- 日誌文件初始大小
	FILEGROWTH=0 -- 未啓用自動增加
)

GO -- 批處理標誌
複製代碼
> 注意:語言使用的是 **小括號** **()**,不是花括號 {},過程當中命令後使用 **逗號** **,**而非分號 ;,命令最後一句不須要逗號
複製代碼
  1. 向現有數據庫添加文件組和數據文件
USE E_Market	-- 指向當前使用的數據庫
ALTER DATABASE E_Market ADD FILEGROUP FG1	-- 向數據庫中添加一個名爲 FG1 的文件組
GO

-- 給新建的文件組 FG1 添加數據文件
ALTER DATABASE E_Market ADD FILE
(
	NAME='FG1_E_Market_data',
	FILENAME='F:\Project\FG_E_Market_data.ndf',
	SIZE=5MB,
	FILEGROWTH=10%
)TO FILEGROUP FG1
GO

-- 將 FG1 文件組設爲默認文件組
ALTER DATABASE E_Market
MODIFY FILEGROUP FG1 DEFAULT
GO
複製代碼
> 將選定文件組設置爲默認文件組後,添加文件將歸屬於默認文件組中
複製代碼
  1. 刪除數據庫
DROP DATABASE E_Market

-- 附加:
IF EXISTS (SELECT * FROM sysdatabases WHERE name='E_Market')	-- 檢查想要刪除的數據庫是否存在
DROP DATABASE E_Market

-- 使用判斷檢查數據庫是否存在,若存在執行刪除,不然,不執行

複製代碼
相關文章
相關標籤/搜索