SQL Tip 小技巧整理集總共 31 篇 ,提供給大家學習參考。
SQL Tip 小技巧整理集總共 31 篇 ,提供給大家學習參考。
你可以使用 ALTER DATABASE 陳述式移動任何系統或使用者自訂資料庫檔案(除了 Resource database 相關檔案例外)。移動檔案必須指定現有邏輯名稱和新的實體檔案路徑,而且這樣的方式一次只能移動一個檔案。
計畫移動資料或記錄檔案請遵循以下步驟
USE master
SELECT name,
physical_name
FROM sys.master_files
WHERE database_id
= DB_ID('Personnel');
ALTER DATABASE Personnel
SET offline
GO
ALTER DATABASE Personnel
MODIFY FILE ( NAME =
Personnel_Data,
FILENAME =
'C:\Data\Personnel_Data.mdf')
GO
ALTER DATABASE Personnel
SET online
GO
驗證檔案變更
USE master
SELECT name, physical_name
FROM sys.master_files
WHERE database_id
= DB_ID('Personnel');
你也可能以邏輯名稱來移動全文檢索目錄。請注意當您指定新目錄的位置時,只需指定 new_path,而不需指定 new_path/file_name。
計畫移動全文檢索目錄請遵循以下步驟
ALTER DATABASE database_name
SET offline
GO
2. 對於要移動的每個全文檢索目錄至新路徑請執行以下陳述式
ALTER DATABASE database_name
MODIFY FILE ( NAME =
logical_name, FILENAME = 'new_path')
GO
3.重複步驟2移動其他必要的全文檢索目錄檔案
4. 設定資料庫為線上工作
ALTER DATABASE database_name
SET online
GO
關於ALTER DATABASE更多使用請看Change
Settings with ALTER DATABASE in SQL Server 2008.
來源出處: Microsoft Press book Microsoft SQL Server
2008 Administrator’s Pocket Consultant, Second Edition by William R. Stanek.
SQL Server 2000 交易紀錄傳送設定是透過維護計畫,這部分不同於SQL Server 2008 是透過資料庫屬性,因為這因素,所以你不能直接將SQL Server 2000 交易紀錄傳送升級到SQL Server 2008 ,然而,你可以整合你的SQL Server 2000交易紀錄傳送設定到SQL Server
2008 交易紀錄傳送.
請遵循以下步驟輕鬆升級交易紀錄傳送設定
3.啟用主要資料庫交易紀錄傳送.請確保交易紀錄備份檔案是正常的.並使用和SQL Server 2000交易紀錄傳送設定相同的備份.
4.在次要資料庫設定視窗中,你必須選擇 否,設定期間次要資料庫已初始化(No, The
Secondary Database Is Initialized during the configuration).當你開始傳送交易紀錄時,次要資料庫將自動升級為SQL
Server 2008資料庫.
SQL Server 2008 將不會使用SQL
Server 2000相關交易紀錄傳送資料表,整合之後,你可以移除下列SQL Server 2000 交易紀錄傳送資料表:
也可以刪除所有SQL Server 2000 交易紀錄傳送相關的SQL Server Agent 作業.
來源出處: Microsoft Press book Microsoft SQL Server
2008 Administrator’s Pocket Consultant, Second Edition by William R. Stanek.
在SQL Server 中你將發現數值資料類型是很常見的.SQL Server 2008 有9種數值資料類型.4種資料類型設計儲存各種大小的整數.2種資料類型設計儲存貨幣資料.4種資料類型設計儲存基於10進制不同精確度的數值.底下有各種數值資料類型範圍和儲存空間概觀.
|
資料類型範圍的儲存空間 |
||
|
資料類型 |
範圍 |
儲存空間 |
|
tinyint |
0 to 255 |
1 位元組 |
|
smallint |
-32,768 to 32,767 |
2位元組 |
|
int |
4位元組 |
|
|
bigint |
8位元組 |
|
|
Decimal(p,s) Numeric(p,s) |
5 to 17 位元組 |
|
|
smallmoney |
-214,748.3648 to 214,748.3647 |
4位元組 |
|
money |
-922,337,203,685,477.5808 to 922,337,203,685,477.5807 |
8位元組 |
|
real |
4位元組 |
|
|
float(n) |
4位元組或8位元組 |
附註decimal 和 numeric兩者資料類型是完全相同的.兩者資料類型也支援往後產品相容性,當你需要儲存確切的小數值資料,這兩者資料類型也都能使用.然而,建議整個組織選擇其中一個使用以確保一致性.
Money和smallmoney資料類型是特別設計用來儲存最多4位小數的貨幣值
有趣的是 ,money和smallmoney雖然是設計來儲存貨幣值,但金融機構往往選用decimal資料類型來儲存更大的小數數值,因為利率和收益率計算方式才是決定的關鍵.
float 資料類型的參數數字稱為尾數(mantissa),該參數是可選擇的.如果尾數定義在1和24之間,float儲存將耗用4位元組空間.如果尾數定義在25和33之間,float儲存將耗用8位元組空間.
來源出處: Microsoft Press book Microsoft SQL Server 2008 Step by Step by Mike Hotek.
在本地系統中,你可以在標準命令提示字元視窗中輸入必要命令.在遠端系統中,你可以連線到遠端系統然後發出必要命令.透過相關命令,你可以啟動,停止和暫停 SQL Server或其他任何你想要控制的服務.管理預設資料庫伺服器執行個體,請使用以下命令:
NET START MSSQLSERVER 啟動 SQL Server 服務.
NET STOP MSSQLSERVER 停止執行中的 SQL Server 服務.
NET PAUSE MSSQLSERVER 暫停執行中的 SQL Server 服務.
NET CONTINUE MSSQLSERVER 繼續執行中的 SQL Server 服務.
管理SQL Server 具名執行個體,請遵循以下命令:
NET START MSSQL$instancename 啟動 SQL Server 服務,這裡的instancename是指真正的資料庫伺服器執行個體名稱.
NET STOP MSSQL$instancename 停止 SQL Server 服務,這裡的instancename是指真正的資料庫伺服器執行個體名稱.
NET PAUSE MSSQL$instancename 暫停 SQL Server 服務,這裡的instancename是指真正的資料庫伺服器執行個體名稱.
NET CONTINUE MSSQL$instancename繼續執行中的 SQL Server 服務,這裡的instancename是指真正的資料庫伺服器執行個體名稱.
你可在啟動選項增加 net start MSSQLSERVER 或 net start MSSQL$instance 命令.啟動選項會使用 / 來取代 – 符號,如以下例子:
net start MSSQLSERVER /f /m
net start MSSQL$CUSTDATAWAREHOUS /f /m
真實世界的參考名稱可能不是 MSSQLSERVER 或 MSSQL$instancename,你可以參考服務所顯示的名稱.針對預設的執行個體,你可以使用 “SQL Server(MSSQLSERVER)”並搭配 net start,net stop,net pause和 net continue.針對具名的執行個體,你可以使用 “SQL Server(InstanceName)”,這裡的InstanceName是指執行個體的名稱,如 net start “SQL Server (CUSTDATAWAREHOUS)”.這兩種命令用法都必須要包含雙引號.
來源出處: Microsoft Press book Microsoft SQL Server 2008 Administrator’s Pocket Consultant, Second Edition by William R. Stanek.