一、概述
SQL Server能管理多個數據庫,每個數據庫有自己的選項。SQL Server允許用戶通過設置數據庫選項,來更好地管理和使用數據庫。當大批數據需要加載到數據庫的表時,如果把該庫的Select into/bulkcopy選項設置為true,同時暫時刪掉表上的索引和觸發器,再使用系統提供的實用程序bcp,數據將以驚人的高速度被裝載到用戶表裡。也曾有用戶抱怨,調用dbwritetext函數不能成功地把一幅bmp圖寫入數據庫的image字段中。原因是用戶數據庫的select into/bulkcopy選項沒有設置成true。還有正在開發數據庫應用的用戶希望日常工作不受數據庫日志滿的不斷打擾。這也可以通過設置數據庫選項辦到。因此,我們這裡將數據庫選項的設置和用法詳細介紹給讀者,希望它有助於你有效地使用和管理用戶數據庫。
二、數據庫選項的設置
使用系統存貯過程sp_dboption來設置數據庫選項,它的語法規則如下:
sp_dboption [dbname,optname,{true┃false}]
其中:
dbname為用戶所需設置選項的數據庫名稱。如果執行帶參數的sp_dboption,則當前使用的庫必須是master。不帶參數便顯示數據庫選項清單。但是,用戶不能設置master庫的數據庫選項。
optname為用戶所要設置或關閉的選項名稱。SQL Server能識別選項名的任何唯一的字符串。當其名稱為關鍵字或含嵌入空格或標點符號時,用引號括起來。
{true┃false}——設置該選項時為true,關閉該選項時為false。
使用sp_dboption,能設置以下數據庫選項:
abort tran on log is full
allow null by default
dbo use only
ddl in tran
disable free space acctg
no chkpt on recovery
read only
select into/bulkcopy
single user
trunc log on chkpt
查看數據庫的選項設置情況,使用sp_helpdb存貯過程。
三、數據庫選項的用途
(1)Selectinto/bulkcopy
使用bcp或批拷貝程序接口將數據高速拷貝到一張沒有索引和觸發器的表,Writetext或者Select into生成永久表,則此選項必須設置為true。