国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

數據庫 缺省值

2024-07-21 02:13:00
字體:
來源:轉載
供稿:網友

  缺省值(default)是往用戶輸入記錄時沒有指定具體數據的列中自動插入的數據。缺省值對象與alter table 或create table 命令操作表時用default 選項指定的缺省值功能相似,但缺省值對象可以用于多個列或用戶自定義數據類型,它的管理與應用同規(guī)則有許多相似之處。表的一列或一個用戶自定義數據類型也只能與一個缺省值相綁定。

9.3.1 創(chuàng)建缺省值
(1) 用create default 命令創(chuàng)建缺省值
create default 命令用于在當前數據庫中創(chuàng)建缺省值對象,其語法如下:
create default default_name as constant_expression
其中constant_expression 子句是缺省值的定義。constant_expression 子句可以是數學表達式或函數,也可以包含表的列名或其它數據庫對象。

例9-11: 創(chuàng)建生日缺省值birthday_defa。
create default birthday_defa
as '1978-1-1'
例9-12: 創(chuàng)建姓名缺省值name_defa。
create default name_defa
as user

(2) 用enterprise manager 創(chuàng)建缺省值
在enterprise manager 中選擇數據庫對象“defaults”, 單擊右鍵,從快捷菜單中選擇n“ew default” 選項,即會彈出如圖9-6 所示的創(chuàng)建缺省值屬性對話框。輸入缺省值名稱和值表達式之后,單擊“確定”按鈕,即完成缺省值的創(chuàng)建。

9.3.2 查看缺省值
(1) 用enterprise manager 查看缺省值
在enterprise manager 中選擇“defaults”對象,即可從右邊的任務板中看到缺省值的大部分信息。如圖9-7 所示。也可以選擇要查看的缺省值,單擊右鍵,從快捷菜單中選擇“properties” 選項,即會出現如圖9-8 所示的缺省值屬性對話框,可以從中編輯缺省值的
值表達式。修改缺省值名稱的方法與修改規(guī)則名稱的方法相同,可以用sp_rename 存儲過程修改,也可以在企業(yè)管理器的任務板窗口中直接修改。


(2) 用存儲過程sp_helptext 查看缺省值
使用sp_helptext 存儲過程可以查看缺省值的細節(jié)。
例9-13: 查看缺省值today。
exec sp_helptext today

運行結果如下:
------------------------------------------------------------------
text
------------------------------------------------------------------
create default [dp_date] as getdate()

9.3.3 缺省值的綁定與松綁
創(chuàng)建缺省值后,缺省值僅僅只是一個存在于數據庫中的對象,并未發(fā)生作用。同規(guī)則一樣,需要將缺省值與數據庫表或用戶自定義對象綁定。
(1) 用enterprise manager 管理缺省值的綁定
在enterprise manager 中,選擇要進行綁定設置的缺省值,單擊右鍵,從快捷菜單中選擇“properties” 選項,即會出現如圖9-8 所示的缺省值屬性對話框。

圖9-8 中的“bind udts…” 按鈕用于綁定用戶自定義數據類型,“bind columns…”按鈕用于綁定表的列。在圖9-8 中單擊“bind udts…” 按鈕,則出現如圖9-9 所示的綁定缺省值到用戶自定義數據類型的對話框;單擊“bind columns…” 按鈕,則出現如圖9-
10 所示的綁定缺省值到表的列的對話框。用它們來管理缺省值與表的列以及用戶自定義數據類型之間的綁定非常方便。

(2) 用存儲過程sp_bindefault 綁定缺省值
存儲過程sp_bindefault 可以綁定一個缺省值到表的一個列或一個用戶自定義數據類型上。其語法如下:
sp_bindefault [@defname =] 'default',
[@objname =] 'object_name'
[, 'futureonly']
其中'futureonly'選項僅在綁定缺省值到用戶自定義數據類型上時才可以使用。當指定此選項時,僅以后使用此用戶自定義數據類型的列會應用新缺省值,而當前已經使用此數據類型的列則不受影響。
例9-14 :綁定缺省值today 到用戶自定義數據類型hire_date 上。
exec sp_bindefault today, hire_date
運行結果如下:
--------------------------- ------------------------------
default bound to data type.
the new default has been bound to columns(s) of the specified user data type.

(3) 用存儲過程sp_unbindefault 解除缺省值的綁定
存儲過程sp_unbindefault 可以解除缺省值與表的列或用戶自定義數據類型的綁定,其語法如下:
sp_unbindefault [@objname =] 'object_name'
[,'futureonly']
其中'futureonly'選項同綁定時一樣,僅用于用戶自定義數據類型,它指定現有的用此用戶自定義數據類型定義的列仍然保持與此缺省值的綁定。如果不指定此項,所有由此用戶自定義數據類型定義的列也將隨之解除與此缺省值的綁定。

例9-15: 解除缺省值num_default 與表products 的quantity 列的綁定。
exec sp_unbindefault ‘products.[quantity]’
運行結果如下:
--------------------------- ------------------------------
(1 row(s) affected)
default unbound from table column.
注意:如果列同時綁定了一個規(guī)則和一個缺省值、那么缺省值應該符合規(guī)則的規(guī)定。
      不能綁定缺省值到一個用create table或alter table命令創(chuàng)建或修改表時用default選項指定了的缺省值的列上。

9.3.4 刪除缺省值
可以在enterprise manager 中選擇缺省值,單擊右鍵,從快捷菜單中選擇“delete” 選項刪除缺省值,也可以使用drop default 命令刪除當前數據庫中的一個或多個缺省
值。其語法如下:
drop default {default_name} [,...n]
注意:在刪除一個缺省值前必須先將與其綁定的對象解除綁定。

例9-16: 刪除生日缺省值birthday_defa。
drop default birthday_defa

本章小結
數據完整性工具的應用是sql server 的一大特點,它通過在數據庫端使用特定的規(guī)定來管理流入與輸出系統(tǒng)的信息,而不是由應用程序本身來控制信息的類型,這使得數據獨立與應用程序成為開放的數據庫系統(tǒng)。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 沂南县| 梁平县| 拜泉县| 农安县| 哈巴河县| 崇左市| 宾阳县| 哈密市| 隆安县| 清原| 山丹县| 新乐市| 永昌县| 澄江县| 长泰县| 普陀区| 威信县| 赤城县| 昭觉县| 讷河市| 衡阳市| 鹿泉市| 昆山市| 长岛县| 湟源县| 鄯善县| 高唐县| 钟山县| 崇仁县| 漠河县| 铜山县| 延长县| 渝北区| 平遥县| 怀仁县| 滨海县| 兰西县| 东乌珠穆沁旗| 棋牌| 江安县| 平塘县|