本文介紹基於Microsoft SQL Server軟體,實現資料庫創建、分離、附加、刪除與備份的方法。 目錄1 互動式創建資料庫2 Transact-SQL指定參數創建資料庫3 互動式分離資料庫testbase14 使用系統存儲過程分離資料庫testbase25 資料庫文件備份:分離資料庫再複製其 ...
本文介紹基於Microsoft SQL Server軟體,實現資料庫創建、分離、附加、刪除與備份的方法。
目錄- 1 互動式創建資料庫
- 2 Transact-SQL指定參數創建資料庫
- 3 互動式分離資料庫testbase1
- 4 使用系統存儲過程分離資料庫testbase2
- 5 資料庫文件備份:分離資料庫再複製其物理文件
- 6 資料庫文件備份:停止SQL Server 2008服務再複製資料庫物理文件
- 7 互動式附加資料庫
- 8 使用系統存儲過程附加資料庫
- 9 互動式刪除資料庫
- 10 Transact-SQL刪除資料庫
空間資料庫同樣是GIS行業中至關重要的一部分。因此,本系列博客就將基於Microsoft SQL Server軟體,對資料庫基礎知識與實際操作、代碼含義等加以細緻梳理與介紹。
系列文章中示例數據來源於《SQL Server實驗指導(2005版)》一書。依據本系列文章的思想與對操作步驟、代碼的詳細解釋,大家用自己手頭的數據,可以將相關操作與分析過程加以完整重現。
1 互動式創建資料庫
(1) 啟動Microsoft SQL Server 2008 R2軟體;
(2) 在 “對象資源管理器”中,右鍵“資料庫”按鈕,選擇“新建資料庫”選項,即可彈出“新建資料庫”視窗,如下圖;
(3) 在所彈出的“新建資料庫”視窗中“資料庫名”一欄內輸入“jxsk”;在“資料庫文件”列表中,選擇資料庫數據文件的存儲“路徑”右側的省略號按鈕,並將路徑設置為“G:\sql\chutianjia sql”;選擇資料庫日誌文件的存儲“路徑”右側的省略號按鈕,將路徑設置為“G:\sql\chutianjia sql”,同時可在此處查看其他相關數據的設置;點擊“確定”按鈕,資料庫創建完成。在“對象資源管理器”一欄處刷新後可以看到所建立的資料庫已存在;
(4) 在“對象資源管理器”中,右鍵選擇jxsk,選擇“屬性”項目,打開“資料庫屬性”視窗,在左側 “選擇頁”中,選擇“文件”一欄,即可查看資料庫文件屬性,如下圖;
(5) 單擊選擇數據文件行中“自動增長”單元格右側的省略號按鈕,即可彈出更改自動增長設置對話框;在“文件增長”項目中,選擇“按MB(M)”勾選框,併在其右側文本框中輸入4;在“最大文件大小”一欄中,選擇“限制文件增長(MB)”勾選框,併在其右側文本框中輸入100;單擊“確定”,即可實現對資料庫屬性的更改。
2 Transact-SQL指定參數創建資料庫
(1) 創建資料庫“testbase”
i. 單擊屏幕上方工具欄中的“新建查詢”按鈕,打開“查詢編輯器”視窗,併在查詢編輯器視窗中輸入以下T-SQL語句,如下圖:
CREATE DATABASE testbase1
ON
(NAME=testbase1_data,
FILENAME='G:\sql\chutianjia sql\testbase_data.mdf')
LOG ON
(NAME=taetbase1_log,
FILENAME='G:\sql\chutianjia sql\testbase_data.ldf')
GO
ii. 單擊 “工具欄”中的“執行(x)”按鈕,即可執行上述T-SQL語句,如下圖;若語句存在問題,將會在下方的提示視窗中顯示問題所在;
iii. 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“刷新”選項,可見其所示內容中已存在通過上述方法新建立的testbase1資料庫;
iv. 在“對象資源管理器”中,右擊資料庫testbase1,選擇快捷菜單中的“屬性”選項,打開資料庫testbase1屬性對話框視窗,即可分別查看“常規”“文件”“文件組”等屬性頁內容,結果分別如以下三圖所示;
(2) 指定多個參數創建資料庫“testbase2”
i. 單擊屏幕上方 “工具欄”菜單中的“新建查詢”按鈕,打開“查詢編輯器”視窗,併在“查詢編輯器”視窗中輸入以下T-SQL語句:
CREATE DATABASE testbase2
ON
PRIMARY
(NAME=testbase2_prim_sub_dat1,
FILENAME='G:\sql\chutianjia sql\testbase2_prim_sub_dat.mdf',
SIZE=5MB,
MAXSIZE=50MB,
FILEGROWTH=20%),
(NAME=testbase2_prim_sub_dat2,
FILENAME='G:\sql\chutianjia sql\testbase2_prim_sub_dat.ndf',
SIZE=5MB,
MAXSIZE=50MB,
FILEGROWTH=20%),
FILEGROUP testbase2_group1
(NAME=testbase2_group1_sub1,
FILENAME='G:\sql\chutianjia sql\testbase2_group1_sub1.dat.ndf',
SIZE=5MB,
MAXSIZE=50MB,
FILEGROWTH=5MB),
(NAME=testbase2_group1_sub2,
FILENAME='G:\sql\chutianjia sql\testbase2_group1_sub2.dat.ndf',
SIZE=5MB,
MAXSIZE=50MB,
FILEGROWTH=5MB),
FILEGROUP testbase2_group2
(NAME=testbase2_group2_sub1,
FILENAME='G:\sql\chutianjia sql\testbase2_group2_sub1.dat.ndf',
SIZE=5MB,
MAXSIZE=50MB,
FILEGROWTH=15%),
(NAME=testbase2_group2_sub2,
FILENAME='G:\sql\chutianjia sql\testbase2_group2_sub2.dat.ndf',
SIZE=5MB,
MAXSIZE=50MB,
FILEGROWTH=15%)
LOG ON
(NAME=testbase2_testbase2_log,
FILENAME='G:\sql\chutianjia sql\testbase2_log_file.idf',
SIZE=20MB,
MAXSIZE=500MB,
FILEGROWTH=10MB)
GO
ii. 單擊 “工具欄”中的“執行(x)”按鈕,即可執行上述T-SQL語句,如下圖;若語句存在問題,將會在下方的提示視窗中顯示問題所在;
iii. 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“刷新”選項,可見其所示內容中已存在通過上述方法新建立的testbase2資料庫,如下圖;
iv. 在“對象資源管理器”窗格中,右擊資料庫testbase2,選擇快捷菜單中的“屬性”選項,打開資料庫testbase1屬性對話框視窗,即可分別查看“常規”“文件”“文件組”等屬性頁內容,結果分別如以下三圖所示;
3 互動式分離資料庫testbase1
(1) 在“對象資源管理器”中,右擊資料庫testbase1,選擇快捷菜單中的“屬性”選項,打開資料庫testbase1屬性對話框視窗,在“選擇頁”一欄中,選擇“文件”按鈕,即可查詢對應資料庫文件名和物理文件路徑名;
(2) 在“對象資源管理器”中,右擊資料庫testbase1,在彈出的視窗中選擇“任務”→分離”;
(3) 在彈出的視窗中,若“狀態”選項為“就緒”字樣,則表明該資料庫testbasel目前正處於非活動連接狀態;此時選擇“確定”按鈕即可完成資料庫的分離操作;而如果上述“狀態”一欄為“非就緒”字樣,表明該資料庫目前正處於活動連接狀態,即正在被使用中,則需選中“刪除連接”字樣處的覆選框,再單擊“確定”按鈕即可完成分離,如下圖;
(4) 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“刷新”選項,可見其所示內容中已不存在通過上述方法新建立的testbase1資料庫,如下圖。
4 使用系統存儲過程分離資料庫testbase2
(1) 單擊屏幕上方 “工具欄”菜單中的“新建查詢”按鈕,打開“查詢編輯器”視窗,併在“查詢編輯器”視窗中輸入以下T-SQL語句:
EXEC sp_detach_db testbase2,true
(2) 單擊 “工具欄”中的“執行(x)”按鈕,即可執行上述T-SQL語句,如下圖;
(3) 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“刷新”選項,可見其所示內容中已不存在通過上述方法新建立的testbase2資料庫,如下圖。
5 資料庫文件備份:分離資料庫再複製其物理文件
(1) 在“對象資源管理器”中,右擊資料庫testbase1,選擇快捷菜單中的“屬性”選項,打開資料庫testbase1屬性對話框視窗,在“選擇頁”一欄中,選擇“文件”按鈕,即可查詢對應資料庫文件名和物理文件路徑名;
(2) 在“對象資源管理器”中,右擊資料庫testbase1,在彈出的視窗中選擇“任務”→分離”;
(3) 在資源管理器中,打開文件夾“G:\sql\chutianjia sql”,將資料庫文件testbase_data.mdf、testbase_data.ldf複製到可移動磁碟“G:\sql”文件目錄下,如下圖;
6 資料庫文件備份:停止SQL Server 2008服務再複製資料庫物理文件
(1) 選擇“開始”→“Microsoft SQL Server 2008 R2”→“SQL Server 配置管理器”→“SQL Server服務”,右擊選擇“SQL Server(MSSQLSERVER)”,選擇“停止”,如以下兩圖;
(2) 打開“對象資源管理器”窗格,發現(local)左側的資料庫標記增加了一個紅色的點狀符號,說明服務已停止;
(3) 在資源管理器中,打開文件夾“G:\sql\chutianjia sql”,將資料庫文件testbase_data.mdf、testbase_data.ldf複製到可移動磁碟“G:\sql”文件目錄下,如下圖。
7 互動式附加資料庫
(1) 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“附加”選項;
(2) 選擇需要加以附加的資料庫物理文件,選擇定位文件夾“G:\sql\chutianjia sql”並選擇對應資料庫的物理文件並選擇“確定”按鈕,再次選擇“確定”即可;
(3) 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“刷新”選項,可見其所示內容中已存在通過上述方法新建立的testbase2資料庫,如下圖。
8 使用系統存儲過程附加資料庫
(1) 單擊屏幕上方 “工具欄”菜單中的“新建查詢”按鈕,打開“查詢編輯器”視窗,併在“查詢編輯器”視窗中輸入以下T-SQL語句:
EXEC sp_attach_single_file_db @dbname='testbase1',
@physname='G:\sql\chutianjia sql\testbase_data.mdf'
(2) 單擊 “工具欄”中的“執行(x)”按鈕,即可執行上述T-SQL語句,如下圖;
(3) 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“刷新”選項,可見其所示內容中已存在通過上述方法新建立的資料庫。
9 互動式刪除資料庫
(1) 在“對象資源管理器”中,右擊資料庫testbase1,選擇快捷菜單中的“刪除”選項,如下圖;
(2) 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“刷新”選項,可見其所示內容中已不存在testbase1資料庫。
10 Transact-SQL刪除資料庫
(1) 單擊屏幕上方 “工具欄”菜單中的“新建查詢”按鈕,打開“查詢編輯器”視窗,併在“查詢編輯器”視窗中輸入以下T-SQL語句:
drop database testbase2
(2) 單擊 “工具欄”中的“執行(x)”按鈕,即可執行上述T-SQL語句,如下圖;
(3) 在“對象資源管理器”窗格中,在“資料庫”處右鍵,在彈出的菜單中選擇“刷新”選項,可見其所示內容中已不存在testbase2資料庫,如下圖;
至此,大功告成。