freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

項(xiàng)目三公司管理數(shù)據(jù)系統(tǒng)的表的創(chuàng)建和修改(編輯修改稿)

2024-10-07 00:18 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 在列定義外單獨(dú)定義的,它是多列之間的約束,用 CONSTRAINT關(guān)鍵字定義。 注意 :如果要對(duì)一個(gè)表中的多個(gè)列定義約束,必須首先定義每個(gè)列,然后在末尾追加表約束。 1. 主關(guān)鍵字 ( PRIMARY KEY) 約束 一個(gè)表中 , 存在這樣的字段 , 它在每個(gè)記錄中的值都是惟一的 , 因此可以用來(lái)標(biāo)識(shí)表中的各個(gè)不同的紀(jì)錄 。 這樣的字段被稱為關(guān)鍵字 。在這些列上創(chuàng)建主關(guān)鍵字約束 , 確保數(shù)據(jù)表的一列或幾列的組合的值在表中具有惟一性 。 ( 1) 在企業(yè)管理器中定義主鍵約束 “表設(shè)計(jì)器 ? 對(duì)話框中 , 選擇要設(shè)置為主鍵的列 , 可以選擇一個(gè)列 , 也可以選擇多個(gè)列 。在所選的字段左端的選擇按鈕上右擊鼠標(biāo) , 在彈出的菜單中選擇 ? 設(shè)置主鍵 ? 或點(diǎn)擊工具欄上的圖標(biāo) 按鈕 。 說(shuō)明 :如果主關(guān)鍵字包含多個(gè)字段 , 則在定義時(shí) , 首先按住 【 Ctrl】 鍵或 【 Shift】 鍵 , 再選擇字段 。 按 【 Ctrl】 鍵可選擇不連續(xù)的多個(gè)字段 , 按 【 Shift】 鍵則只能選擇連續(xù)的多個(gè)字段 。 ( 2) 使用 TransactSQL語(yǔ)句定義主關(guān)鍵字約束的語(yǔ)法如下 : CONSTRAINT constraint_name PRIMARY KEY [CLUSTERED|NONCLUSTERED] (column_namel[,column_name2,..., column_namel6]) 各參數(shù)說(shuō)明 : ? constraint_name:指定約束的名稱 。 約束的名稱在數(shù)據(jù)庫(kù)中應(yīng)是惟一的 。 如果不指定 , 則系統(tǒng)會(huì)自動(dòng)生成一個(gè)約束名 。 ? CLUSTERED|NONCLUSTERED: 指 定 索 引 類 別 ,CLUSTERED為缺省值 。 其具體信息請(qǐng)參見(jiàn)索引章節(jié) 。 ? Column_name:指定組成主關(guān)鍵字的列名 。 主關(guān)鍵字最多由 16個(gè)列組成 。 說(shuō)明:每個(gè)表只允許存在一個(gè)主鍵約束 ( PRIMARY KEY) 。 【 例 6】 創(chuàng) 建 一 個(gè) 產(chǎn) 品 信 息 表( product_info) , 以產(chǎn)品編號(hào)和名稱為主關(guān)鍵字 。 CREATE TABLE product_info( 產(chǎn)品 ID int, 產(chǎn)品名稱 char(10) not null, 單價(jià) money default 10, 庫(kù)存量 int null, 總價(jià)值 as 單價(jià) *庫(kù)存量 , /*產(chǎn)品總價(jià)值 =單價(jià) *庫(kù)存量 */ CONSTRAINT P_KP_ID PRIMARY KEY (產(chǎn)品 ID, 產(chǎn)品名稱 ) ) 2. 外鍵 ( FOREIGN KEY) 約束 外鍵約束定義了 表之間 的關(guān)系 。 當(dāng)一個(gè)表中的一個(gè)列或多個(gè)列的組合和其它表中的主關(guān)鍵字屬性相同時(shí) , 就可以將這些列或列的組合定義為外關(guān)鍵字 , 并設(shè)定已適合哪個(gè)表中哪些列相關(guān)聯(lián) 。 作用 : ?當(dāng)在定義主關(guān)鍵字約束的表中更新列值時(shí) , 其它與之相關(guān)聯(lián)的外關(guān)鍵字約束的表中的外關(guān)鍵字字段的值也將被自動(dòng)更新 。 ?當(dāng)向含有外關(guān)鍵字的表插入數(shù)據(jù)時(shí) , 如果與之相關(guān)聯(lián)的表的字段中無(wú)與插入的外關(guān)鍵字字段值相同的值時(shí) , 系統(tǒng)會(huì)拒絕插入數(shù)據(jù) 。 【 例 7】 數(shù)據(jù)庫(kù) pubs 中的 titles 表與 publishers 表有鏈接,因?yàn)樵跁?shū)名和出版商之間存在邏輯聯(lián)系。 titles 表中的 pub_id 列與 publishers 表中的主鍵列相對(duì)應(yīng)。 titles 表中的 pub_id 列是到 publishers 表的外鍵。 Primary Key ( 1) 在企業(yè)管理器中創(chuàng)建外鍵約束 操作步驟如下: 1. 打開(kāi) panyinfo數(shù)據(jù)庫(kù) 2. 執(zhí)行 【 新建數(shù)據(jù)庫(kù)關(guān)系圖 】 命令 . 3. 打開(kāi)創(chuàng)建數(shù)據(jù)庫(kù)關(guān)系圖向?qū)?, 進(jìn)入數(shù)據(jù)庫(kù)關(guān)系圖創(chuàng)建窗口 。 4. 在數(shù)據(jù)庫(kù)關(guān)系圖創(chuàng)建窗口的工具攔中 , 單擊 ? 在關(guān)系圖上添加表 ? 按鈕 。 將打開(kāi) ? 添加表 ? 對(duì)話框 。 5. 在 ? 添加表 ? 對(duì)話框中 , 選擇主鍵表 product表 , 并單擊? 添加 ? 按鈕 , 再選擇外鍵表 p_oreder表 , 并單擊 ? 添加 ?按鈕 。 然后關(guān)閉 ? 添加表 ? 對(duì)話框 。 6. 將鼠標(biāo)移動(dòng)到 product表中的 ? 產(chǎn)品 ID”左邊的選擇欄 , 單擊左鍵 , 并將鼠標(biāo)指針拖動(dòng)到 p_oreder表中的 ? 產(chǎn)品 ID”字段上 。 ( 2) 使用 TransactSQL語(yǔ)句定義外關(guān)鍵字約束 語(yǔ)法如下 : CONSTRAINT constraint_name FOREIGN KEY (column_namel[,column_name2,..., column_namel6]) REFERENCES ref_table [(ref_columnl[, ref_column2,..., ref_columnl6])] [ ON DELETE{CASCADE|NO ACTION}] [ ON UPDATE{CASCADE|NO ACTION}]] [NOT FOR REPLICATION] 各參數(shù)說(shuō)明 : ? REFERENCES:指定要建立關(guān)聯(lián)的表的信息 。 ? ref_table:指定要建立關(guān)聯(lián)的表的名稱 。 ? ref_column:指定要建立關(guān)聯(lián)的表中的相關(guān)列的名稱 。 ? ON DELETE{CASCADE|NO ACTION}:指定在刪除表中數(shù)據(jù)時(shí) , 對(duì)關(guān)聯(lián)表所做的相關(guān)操作 。 在子表中有數(shù)據(jù)行與父表中的對(duì)應(yīng)數(shù)據(jù)行相關(guān)聯(lián)的情況下 , 如果指定了值 CASCADE, 則在刪除父表數(shù)據(jù)行時(shí)會(huì)將子表中對(duì)應(yīng)的數(shù)據(jù)行刪除;如果指定的是 NO ACTION, 則 SQL Server會(huì)產(chǎn)生一個(gè)錯(cuò)誤 , 并將父表中的刪除操作回滾 。 NO ACTION是缺省值 。 ? ON UPDATE{CASCADE|NO ACTION}:指定在更新表中數(shù)據(jù)時(shí) , 對(duì)關(guān)聯(lián)表所做的相關(guān)操作 。 ? NOT FOR REPLICATION:指定列的外關(guān)鍵字約束在把從其它表中復(fù)制的數(shù)據(jù)插入到表中時(shí)不發(fā)生作用 。 【 例 8】 創(chuàng)建一個(gè)課程表,然后創(chuàng)建一個(gè)成績(jī)表與前面創(chuàng)建的學(xué)生表和課程的關(guān)聯(lián)。 腳本文件 31: use students go CREATE TABLE 學(xué)生 (學(xué)號(hào) char(6) NOT NULL, 性別 char(2) NOT NULL , 姓名 char(10) NOT NULL, 學(xué)分 int constraint pk_student_id primary key (學(xué)號(hào) ) ) go 腳本文件 32 CREATE TABLE 課程 (課程號(hào) char(12) NOT NULL , 課程名 char(12) NOT NULL , 學(xué)時(shí) char(10) NOT NULL , 學(xué)分 char(10) NOT NULL constraint pk_course_id primary key (課程號(hào) ) ) Go CREATE TABLE 成績(jī) (學(xué)號(hào) char(6) NOT NULL , 課程號(hào) char(12) NOT NULL, 課程名 char(12) NOT NULL , 成績(jī) int NOT NULL , 補(bǔ)考成績(jī) int NOT NULL constraint pk_grade_id primary key(學(xué)號(hào) ,課程號(hào) ), constraint fr_student_id foreign key(學(xué)號(hào) ) references 學(xué)生 (學(xué)號(hào) ), constraint fr_course_id foreign key(課程號(hào) ) references 課程 (課程號(hào) ) ) 腳本文件 33 (UNIQUE)約束 唯一性約束指定一個(gè)或多個(gè)列的組合的值具有唯一性,以防止在列中輸入重復(fù)的值。唯一性約束指定的列可以有 NULL屬性。由于主關(guān)鍵字值是具有唯一性的,因此主關(guān)鍵字列不能再設(shè)定唯一性約束。唯一性約束最多由 16個(gè)列組成。 ( 1)在企業(yè)管理器中定義惟一性鍵 【 例 9】 將? product”表中的產(chǎn)品 ID列設(shè)定為唯一性約束。 ?在? product”表上右擊鼠標(biāo),在彈出的菜單上點(diǎn)擊 ?設(shè)計(jì)表?,進(jìn)入表的設(shè)計(jì)窗口。 ?在設(shè)計(jì)面板的空白處右擊鼠標(biāo),在彈出的菜單中選擇?屬性?。選擇?索引 /鍵?選項(xiàng)卡 ?單擊?新建?按鈕,系統(tǒng)分配的名稱將出現(xiàn)在?索引名?文本框中。 ( 2)使用 TransactSQL語(yǔ)句定義惟一性約束 語(yǔ)法 : CONSTRAINT constraint_name UNIQUE [CLUSTERED | NONCLUSTERED] (column_ namel[, column_ name2,..., column_ name16]) 【 例 10】 定義一個(gè)員工信息表,其中員工的身份證號(hào)具有惟一性。 CREATE TABLE employee_info( 雇員 ID char(8), 姓名 char(10), 身份證號(hào) char(18) constraint pk_emp_id primary key (雇員 ID), constraint uk_emp_cardid unique (身份證號(hào) ) ) 例: CREATE TABLE jsy_temp3 ( 駕照號(hào) char(8)) PRIMARY KEY , 姓名 varchar(8) NOT NULL, 身份證號(hào) char(18) NOT NULL UNIQUE NONCLUSTERED) ( CHECK)約束 檢查約束對(duì)輸入列或整個(gè)表中的值設(shè)置檢查條件,以限制輸入值,保證數(shù)據(jù)庫(kù)的數(shù)據(jù)完整性。可以對(duì)每個(gè)列設(shè)置符合檢查。 ( 1)在企業(yè)管理器中設(shè)定 CHECK約束的方法 【 例 11】 “product”表中的庫(kù)存量列設(shè)定 CHECK約束,使此列的值限制在 100到 1000之間。 ? 啟動(dòng)企業(yè)管理器,展開(kāi)數(shù)據(jù)庫(kù),在? product”表上右擊鼠標(biāo),在彈出的菜單上點(diǎn)擊 ?設(shè)計(jì)表?,進(jìn)入表的設(shè)計(jì)窗口。 ? 在設(shè)計(jì)面板的空白處右擊鼠標(biāo),在彈出的菜單中選擇?屬性?。選擇? CHECK約束?選項(xiàng)卡,將彈出對(duì)話框。 ? 對(duì)話框中? CHECK約束?選項(xiàng)卡 ? 單擊?新建?按鈕,?選定的約束?列表框顯示了由系統(tǒng)分配的新約束名。系統(tǒng)分配的名稱以 CK開(kāi)始,后跟表名 ? 在?約束表達(dá)式?框中,為 CHECK約束鍵入 SQL表達(dá)式,如將? product”表中的?庫(kù)存量?列的數(shù)據(jù)限制在 100到 1000之間,即輸入:?庫(kù)存量 =100 and 庫(kù)存量 =1000”, ? 關(guān)閉設(shè)計(jì)表? product”的設(shè)計(jì)器,系統(tǒng)將提示是否保存對(duì)表產(chǎn)品的更改,點(diǎn)擊?是?按鈕,保存所創(chuàng)建的 CHECK約束。 ( 2)使用 TransactSQL語(yǔ)句定義檢查約束的語(yǔ)法如下 : CONSTRAINT constraint_name CHECK [NOT FOR REPLICATION] (logical expression)
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1