国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

數(shù)據(jù)庫系統(tǒng)概論——程序員網(wǎng)上報名系統(tǒng)設(shè)計

2023-07-19 12:33 作者:巫師不要去魔法部亂說  | 我要投稿

計算機程序員網(wǎng)上報名系統(tǒng)設(shè)計

1需求分析

1.1設(shè)計背景

1.1.1系統(tǒng)開發(fā)背景?

????????隨著計算機技術(shù)的迅猛發(fā)展,學(xué)校教學(xué)和管理的信息化發(fā)展也有長足的進步,這就?要求各個環(huán)節(jié)都均衡發(fā)展,從軟硬件兩方面把學(xué)校建設(shè)成一流的信息管理、教育教學(xué)的平臺該系統(tǒng)本著減輕教師工作負擔(dān)、提高工作效率,增強參加學(xué)生的身份識別,比傳統(tǒng)的報名模式節(jié)省人力財力和時間。

????????計算機程序員網(wǎng)上報名系統(tǒng)可以使用戶進行信息注冊和項目的報名,計算機程序員網(wǎng)上報名系統(tǒng)還增加了新聞和公告等信息,使得考生在進行網(wǎng)上報名的同時可以了解相關(guān)考試信息,考生可以根據(jù)相關(guān)信息對考試科目更加了解。

1.1.2系統(tǒng)分析

????????計算機程序員網(wǎng)上報名系統(tǒng)的目的是對計算機程序員考試網(wǎng)站信息進行管理。建立該管理系統(tǒng)的主要目標(biāo)是為該考試提供全面的管理的解決方案,以解決傳統(tǒng)的人工管理方式效率低,保密性差,不利于查找,更新和維護的問題,極大地提高考試管理的效率,節(jié)約教育經(jīng)費,以適應(yīng)考試信息化建設(shè)的發(fā)展趨勢。

????????報名系統(tǒng)分為大部分:考生、考試、管理員。考生注冊系統(tǒng)賬戶后進行系統(tǒng)登陸,填寫信息(所在地、性別、賬號密碼、姓名、證件號),查詢考試信息,查看公式公告表,考試報名,繳費,打印準(zhǔn)考證,修改信息,成績查詢,打印成績單??荚嚢l(fā)布(添加)考試信息(如:地點、科目、人數(shù)容量、考試編號起始時間、終止時間、已選人數(shù)),修改考試信息,刪除考試信息。以及考試相關(guān)人員如監(jiān)考人員、閱卷人員。管理員通過提交管理員信息,登錄成功后可選擇是否成為超級管理員,是則顯示超級管理員界面,可進行考生管理、考試管理、管理員管理、系統(tǒng)設(shè)置;否則顯示招生人員界面,可進行考生管理、考試管理、系統(tǒng)設(shè)置。

????????系統(tǒng)的數(shù)據(jù)輸入信息包括學(xué)院、系別、管理、班級、生、成績、電話、地址等。系統(tǒng)的數(shù)據(jù)輸出信息包括計算機匯總輸出信息,如考試成績、考生證件號、考場。

該系統(tǒng)可實現(xiàn)

  • 公告欄的告示(包括注冊公告欄和考生登錄公告欄);

  • 實現(xiàn)用戶的注冊和登錄;實現(xiàn)用戶對注冊信息進行修改;

  • 實現(xiàn)用戶查看系統(tǒng)中已發(fā)布考試;

  • 實現(xiàn)用戶報名考試;

  • 實現(xiàn)用戶查看自己已報名的考試;

  • 實現(xiàn)用戶對自身已報名的考試進行退選;

  • 實現(xiàn)管理員對考生進行添加;

  • 實現(xiàn)管理員對考生進行管理(編輯,刪除);

  • 實現(xiàn)管理員對考試進行添加即發(fā)布考試;

  • 實現(xiàn)管理員查看已發(fā)布的考試并可以對相應(yīng)考試進行刪除;

  • 實現(xiàn)管理員查看某門考試的已報名該考試的考生列表;

  • 實現(xiàn)超級管理員對管理員進行添加,以及編輯管理員信息,刪除管理員;

  • 實現(xiàn)管理員進行公告欄的修改及發(fā)布。

?

1.1.3用戶需求分析

(1)管理員類型 ?管理員可以成功登陸系統(tǒng),系統(tǒng)管理員有權(quán)限進行如下操作:1.添加刪除用戶;2.修改已有用戶密碼; 3.修改學(xué)生的成績;4.查詢學(xué)生成績;5.刪除學(xué)生成績;6.查看系統(tǒng)信息?等等。 ?

(2)閱卷員類型 閱卷員可以成功登錄系統(tǒng),教師有權(quán)限進行如下操作:1.錄入考生成績;2.查詢學(xué)生的成績 3.修改個人密碼 等等。

(3)學(xué)生類型 ?學(xué)生可以成功登錄系統(tǒng),學(xué)生有權(quán)限進行如下操作:1.查詢成績2.查詢考場、考試證件號等3.修改個人密碼以及個人基本信息?等等

?

1.2 數(shù)據(jù)流圖(或功能模塊圖)

?

圖 1??整體設(shè)計流程??


圖 2??數(shù)據(jù)流程頂層圖


?圖 3??數(shù)據(jù)流程一層圖

?

1.3 數(shù)據(jù)字典

1.3.1數(shù)據(jù)結(jié)構(gòu)



1.3.2數(shù)據(jù)項定義

1.4 安全性和完整性要求

????????系統(tǒng)應(yīng)滿足實體完整性、參照完整性和用戶自定義的完整性規(guī)則。對不同的用戶賦予不同的權(quán)限。


2 概念結(jié)構(gòu)設(shè)計

2.1 實體的設(shè)計

1、管理員實體,其屬性有管理員賬號、密碼、姓名、性別。

2、考生實體,其屬性有考生賬號、密碼、姓名、性別、考生證件號、考生所在地。

3、考試信息內(nèi)容實體,其屬性有考試科目編碼、考生準(zhǔn)考證號、考生報名開始&截止日期、考試舉辦方、考試地點、考試試室、考試日期、考試時間。

4、成績查詢實體,其屬性有成績單證件號、考試報名科目、考試成績。

5、報名費用實體,其屬性有費用金額、費用支付方式。

6、公示公告實體,其屬性有公告編號、公告標(biāo)題、公告內(nèi)容、考生賬號、考生證件號。

7、閱卷老師實體,其屬性有閱卷老師證件號、閱卷老師姓名、閱卷老師性別、閱卷老師賬號、閱卷老師密碼。

8、試卷成績實體,其屬性有準(zhǔn)考證號、閱卷老師。

9、監(jiān)考人員實體,其屬性有監(jiān)考人員證件號、監(jiān)考人員姓名、監(jiān)考人員性別。

?

2.2 聯(lián)系的設(shè)計

?

一對多聯(lián)系:

1、考生檔案表和成績查詢表之間的屬于聯(lián)系:一個考生可能多個成績單,一個成績單只能屬于一個考生。

2、考生檔案表和考試信息內(nèi)容表之間的屬于聯(lián)系一個考生可能有多場考試,因此一份考生檔案有多個考試信息內(nèi)容,而一個考試信息內(nèi)容只能屬于一個考生檔案。

3、考生檔案表與報名費用表之間的聯(lián)系一個考生有很多個報名費用表,一個報名費用表只能屬于一個考生。

4、考生檔案表與閱卷老師表之間的聯(lián)系一個閱卷老師有很多個考生檔案,一個考生只能屬于一個閱卷老師。

5、管理員表和公示公告表之間的屬于聯(lián)系一個管理員有多個公示公告,一個公示公告只能由一個管理員來發(fā)布。

6、閱卷老師表與考試信息內(nèi)容表的聯(lián)系一個閱卷老師可以有多個考試信息內(nèi)容表,一個考試信息內(nèi)容表只能屬于一個閱卷老師。

7閱卷老師表與試卷成績表之間的聯(lián)系一個閱卷老師有很多份試卷成績,一試卷成績只能是一個閱卷老師批改。

8、監(jiān)考人員表與考試信息內(nèi)容表之間的聯(lián)系一個監(jiān)考人員表有很多個考試信息內(nèi)容表,一個考試信息內(nèi)容表只能是一個監(jiān)考人員表的。

2.3 概念模型(ER圖)

?

?

圖 4??計算機程序員網(wǎng)上報名系統(tǒng)ER圖

3 數(shù)據(jù)庫物理設(shè)計

3.1 表的設(shè)計

??? ?由于表較多,以下列舉出較重要的表格進行舉例說明。

管理員檔案表:

(1)滿足三范式:第一范滿足的條件是元中的每一個分量都必須是不可分割的數(shù)據(jù)項,管理員檔案表中沒有出現(xiàn)重復(fù)項,滿足第一范式;第二范式要求在第一范式的基礎(chǔ)上,要求所有的非主屬性完全依賴于其主碼,管理員賬戶是主碼,非主屬性都完全依賴于管理員賬戶,故滿足第二范式;第三范式在第二范式的基礎(chǔ)上,任何一個非主屬性都不傳遞依賴于任何主關(guān)字,該管理員檔案表中的非主屬性都不傳遞依賴于主關(guān)鍵字,故滿足第三范式。

(2)滿足三類完整性規(guī)則:

實體完整性:主碼管理員賬戶不為空

參照完整性:設(shè)置管理員證件號為外鍵,且不為空。

用戶自定義完整性:設(shè)置性別默認男為“1”。

?

考生檔案表:

(1)滿足三范式:第一范滿足的條件是元中的每一個分量都必須是不可分割的數(shù)據(jù)項,考生檔案表中沒有出現(xiàn)重復(fù)項,滿足第一范式;第二范式要求在第一范式的基礎(chǔ)上,要求所有的非主屬性完全依賴于其主碼,考生賬號、考生證件號是主碼,非主屬性都完全依賴于考生賬號、考生證件號,故滿足第二范式;第三范式在第二范式的基礎(chǔ)上,任何一個非主屬性都不傳遞依賴于任何主關(guān)字,該考生檔案表中的非主屬性都不傳遞依賴于主關(guān)鍵字,故滿足第三范式。

(2)滿足三類完整性規(guī)則:

實體完整性:主碼考生賬號不為空。

參照完整性:考生表有外鍵考生證件號,且考生證件號不為空。

用戶自定義完整性:設(shè)置性別默認男為“1”。

?

?

考試信息內(nèi)容表:

(1)滿足三范式:第一范滿足的條件是元中的每一個分量都必須是不可分割的數(shù)據(jù)項,考試信息內(nèi)容表中沒有出現(xiàn)重復(fù)項,滿足第一范式;第二范式要求在第一范式的基礎(chǔ)上,要求所有的非主屬性完全依賴于其主碼,考生科目編碼是主碼,非主屬性都完全依賴于考生科目編碼,故滿足第二范式;第三范式在第二范式的基礎(chǔ)上,任何一個非主屬性都不傳遞依賴于任何主關(guān)字,該考試信息內(nèi)容表中的非主屬性都不傳遞依賴于主關(guān)鍵字,故滿足第三范式。

(2)滿足三類完整性規(guī)則:

實體完整性:主碼考試科目編碼不為空。

參照完整性:考試信息內(nèi)容表有外鍵考生準(zhǔn)考證號,考生準(zhǔn)考證號不為空。

用戶自定義完整性:時間格式為Timestamp,MySQL會自動將其存儲為格林威治時間(GMT)的時間戳,在檢索時,會將其轉(zhuǎn)換為當(dāng)前連接的時區(qū)。

?

?

成績查詢表:

(1)滿足三范式:第一范滿足的條件是元中的每一個分量都必須是不可分割的數(shù)據(jù)項,成績查詢表中沒有出現(xiàn)重復(fù)項,滿足第一范式;第二范式要求在第一范式的基礎(chǔ)上,要求所有的非主屬性完全依賴于其主碼,成績單證件號是主碼,非主屬性都完全依賴于成績單證件號,故滿足第二范式;第三范式在第二范式的基礎(chǔ)上,任何一個非主屬性都不傳遞依賴于任何主關(guān)字,該成績查詢表中的非主屬性都不傳遞依賴于主關(guān)鍵字,故滿足第三范式。

(2)滿足三類完整性規(guī)則:

實體完整性:主碼成績單證件號不為空。

參照完整性:成績查詢表設(shè)置外鍵考試報名科目,且不為空。

用戶自定義完整性:考試成績默認“四舍五入”。

?

?

?

閱卷老師表:

(1)滿足三范式:第一范滿足的條件是元中的每一個分量都必須是不可分割的數(shù)據(jù)項,閱卷老師檔案表中沒有出現(xiàn)重復(fù)項,滿足第一范式;第二范式要求在第一范式的基礎(chǔ)上,要求所有的非主屬性完全依賴于其主碼,閱卷老師證件號是主碼,非主屬性都完全依賴于閱卷老師證件號,故滿足第二范式;第三范式在第二范式的基礎(chǔ)上,任何一個非主屬性都不傳遞依賴于任何主關(guān)字該閱卷老師表中的非主屬性都不傳遞依賴于主關(guān)鍵字,故滿足第三范式。

(2)滿足三類完整性規(guī)則:

實體完整性:主碼閱卷老師證件號不為空。

參照完整性:設(shè)置外鍵為閱卷老師賬號,且不為空。

用戶自定義完整性:設(shè)置性別屬性默認為男“1”.

?

圖 5?SQL中的表

3.2 索引的設(shè)計

????????為常作為查詢條件的字段建立聚集索引,分別為查詢和報名表、成績結(jié)果查詢表、發(fā)布和修改公示公告表、發(fā)布和修改考試信息表、費用數(shù)據(jù)統(tǒng)計表、公布和修改成績信息表、公示公告表、管理員表、監(jiān)考工作任務(wù)安排表、監(jiān)考人員表、考生表、考試報名數(shù)據(jù)統(tǒng)計表、考試信息內(nèi)容表、上傳成績表、試卷成績表、試卷成績匯總表、閱卷工作任務(wù)安排表、閱卷老師表。

?

???????

?圖 6??SQL中顯示的聚集索引

?

3.3 視圖的設(shè)計

? 圖 7?SQL中顯示的視圖

3.4 存儲過程的設(shè)計

????????程序員網(wǎng)上報名系統(tǒng)中設(shè)計了6個存儲過程,分別是系統(tǒng)存儲過程、管理員存儲過程、監(jiān)考人員過程、考生存儲過程、試卷成績存儲過程、閱卷老師存儲過程。這些存儲過程用來查詢整個程序員網(wǎng)上報名系統(tǒng)。

??

?

?圖 8?SQL中顯示的存儲過程

3.5 觸發(fā)器的設(shè)計

????????計算機程序員網(wǎng)上報名系統(tǒng)中涉及到的數(shù)據(jù)視圖中都可以得到更新,因此只在考生設(shè)置了插入觸發(fā)器、刪除觸發(fā)器和更新觸發(fā)器。當(dāng)考生表有變動時,考試信息內(nèi)容的相關(guān)信息會相應(yīng)變化。

???

? ?

圖 9??SQL中顯示的觸發(fā)器

3.6 角色和用戶的設(shè)計

設(shè)計四種用戶,分別為管理員、監(jiān)考人員、考生、閱卷人員。監(jiān)考人員的權(quán)限主要是select查詢功能,考生、管理員、閱卷人員的權(quán)限主要是select查詢功能更新update功能。

??

?

?

?圖 10?SQL中的用戶和角色

?

?

?

?圖 11?查看考生的權(quán)限

?

4 數(shù)據(jù)庫實施

4.1 代碼的生成

見附錄

?

4.2 數(shù)據(jù)庫實施過程問題

?

????????在PowerDesinger逆向生成SQL sever代碼,表格屬性以及長度設(shè)置注意避免與SQL sever發(fā)生沖突,避免后期大量修改。??

?

?

4.3 數(shù)據(jù)測試

4.3.1視圖測試

?

??

圖 12 所有視圖測試結(jié)果

4.3.2存儲過程測試

?

?圖 13??存儲過程測試結(jié)果

?

?

4.3.3觸發(fā)器測試

4.3.3.1考生插入觸發(fā)器測試

?

圖 14?考生表插入觸發(fā)器測試效果

4.3.3.2考生刪除觸發(fā)器測試

?

圖 15?考生表刪除觸發(fā)器測試效果

4.3.3.3考生更新觸發(fā)器測試

?

?

圖 16?考生表更新觸發(fā)器測試效果


附錄

/*==============================================================*/

/* DBMS name: ?????Sybase SQL Anywhere 11 ??????????????????????*/

/* Created on: ????2023/6/13 10:03:40 ??????????????????????????*/

/*==============================================================*/

?

?

if exists(select 1 from sys.sysforeignkey where role='FK_ASSOCIAT_查詢和報名_考試信息內(nèi)容') then

????alter table Association_13

???????delete foreign key FK_ASSOCIAT_查詢和報名_考試信息內(nèi)容

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_ASSOCIAT_查詢和報名2_考生') then

????alter table Association_13

???????delete foreign key FK_ASSOCIAT_查詢和報名2_考生

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_上傳成績_上傳成績_試卷成績') then

????alter table 上傳成績

???????delete foreign key FK_上傳成績_上傳成績_試卷成績

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_上傳成績_上傳成績2_閱卷老師') then

????alter table 上傳成績

???????delete foreign key FK_上傳成績_上傳成績2_閱卷老師

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_公布&修改成績信_公布和修改成績信息_成績結(jié)果查詢') then

????alter table 公布&修改成績信息

???????delete foreign key FK_公布&修改成績信_公布和修改成績信息_成績結(jié)果查詢

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_公布&修改成績信_公布和修改成績信息_管理員') then

????alter table 公布&修改成績信息

???????delete foreign key FK_公布&修改成績信_公布和修改成績信息_管理員

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_公示公告表_查看公示公告表_考生') then

????alter table 公示公告表

???????delete foreign key FK_公示公告表_查看公示公告表_考生

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_發(fā)布&修改公示公_發(fā)布&修改公示公告_公示公告表') then

????alter table 發(fā)布&修改公示公告表

???????delete foreign key FK_發(fā)布&修改公示公_發(fā)布&修改公示公告_公示公告表

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_發(fā)布&修改公示公_發(fā)布和修改公示公告_管理員') then

????alter table 發(fā)布&修改公示公告表

???????delete foreign key FK_發(fā)布&修改公示公_發(fā)布和修改公示公告_管理員

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_發(fā)布&修改考試信_發(fā)布和修改考試信息_考試信息內(nèi)容') then

????alter table 發(fā)布&修改考試信息

???????delete foreign key FK_發(fā)布&修改考試信_發(fā)布和修改考試信息_考試信息內(nèi)容

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_發(fā)布&修改考試信_發(fā)布和修改考試信息_管理員') then

????alter table 發(fā)布&修改考試信息

???????delete foreign key FK_發(fā)布&修改考試信_發(fā)布和修改考試信息_管理員

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_成績查詢&打印_成績查詢和打印_成績結(jié)果查詢') then

????alter table 成績查詢&打印

???????delete foreign key FK_成績查詢&打印_成績查詢和打印_成績結(jié)果查詢

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_監(jiān)考工作任務(wù)安排_監(jiān)考工作任務(wù)安排_管理員') then

????alter table 監(jiān)考工作任務(wù)安排

???????delete foreign key FK_監(jiān)考工作任務(wù)安排_監(jiān)考工作任務(wù)安排_管理員

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_監(jiān)考工作任務(wù)安排_監(jiān)考工作任務(wù)安排2_監(jiān)考人員') then

????alter table 監(jiān)考工作任務(wù)安排

???????delete foreign key FK_監(jiān)考工作任務(wù)安排_監(jiān)考工作任務(wù)安排2_監(jiān)考人員

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_繳費_繳費_報名費用') then

????alter table 繳費

???????delete foreign key FK_繳費_繳費_報名費用

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_考生_成績查詢和打印3_成績查詢&打印') then

????alter table 考生

???????delete foreign key FK_考生_成績查詢和打印3_成績查詢&打印

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_考生_繳費3_繳費') then

????alter table 考生

???????delete foreign key FK_考生_繳費3_繳費

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_考試報名數(shù)據(jù)統(tǒng)計_考試報名數(shù)據(jù)統(tǒng)計_考試信息內(nèi)容') then

????alter table 考試報名數(shù)據(jù)統(tǒng)計

???????delete foreign key FK_考試報名數(shù)據(jù)統(tǒng)計_考試報名數(shù)據(jù)統(tǒng)計_考試信息內(nèi)容

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_考試報名數(shù)據(jù)統(tǒng)計_考試報名數(shù)據(jù)統(tǒng)計2_管理員') then

????alter table 考試報名數(shù)據(jù)統(tǒng)計

???????delete foreign key FK_考試報名數(shù)據(jù)統(tǒng)計_考試報名數(shù)據(jù)統(tǒng)計2_管理員

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_試卷成績匯總_試卷成績匯總_試卷成績') then

????alter table 試卷成績匯總

???????delete foreign key FK_試卷成績匯總_試卷成績匯總_試卷成績

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_試卷成績匯總_試卷成績匯總2_管理員') then

????alter table 試卷成績匯總

???????delete foreign key FK_試卷成績匯總_試卷成績匯總2_管理員

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_費用數(shù)據(jù)統(tǒng)計_費用數(shù)據(jù)統(tǒng)計_報名費用') then

????alter table 費用數(shù)據(jù)統(tǒng)計

???????delete foreign key FK_費用數(shù)據(jù)統(tǒng)計_費用數(shù)據(jù)統(tǒng)計_報名費用

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_費用數(shù)據(jù)統(tǒng)計_費用數(shù)據(jù)統(tǒng)計2_管理員') then

????alter table 費用數(shù)據(jù)統(tǒng)計

???????delete foreign key FK_費用數(shù)據(jù)統(tǒng)計_費用數(shù)據(jù)統(tǒng)計2_管理員

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_閱卷工作任務(wù)安排_閱卷工作任務(wù)安排_閱卷老師') then

????alter table 閱卷工作任務(wù)安排

???????delete foreign key FK_閱卷工作任務(wù)安排_閱卷工作任務(wù)安排_閱卷老師

end if;

?

if exists(select 1 from sys.sysforeignkey where role='FK_閱卷工作任務(wù)安排_閱卷工作任務(wù)安排2_管理員') then

????alter table 閱卷工作任務(wù)安排

???????delete foreign key FK_閱卷工作任務(wù)安排_閱卷工作任務(wù)安排2_管理員

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='Association_13'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table Association_13

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='上傳成績'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 上傳成績

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='公布&修改成績信息'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 公布&修改成績信息

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='公示公告表'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 公示公告表

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='發(fā)布&修改公示公告表'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 發(fā)布&修改公示公告表

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='發(fā)布&修改考試信息'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 發(fā)布&修改考試信息

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='成績查詢&打印'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 成績查詢&打印

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='成績結(jié)果查詢'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 成績結(jié)果查詢

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='報名費用'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 報名費用

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='監(jiān)考人員'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 監(jiān)考人員

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='監(jiān)考工作任務(wù)安排'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 監(jiān)考工作任務(wù)安排

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='管理員'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 管理員

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='繳費'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 繳費

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='考生'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 考生

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='考試信息內(nèi)容'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 考試信息內(nèi)容

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='考試報名數(shù)據(jù)統(tǒng)計'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 考試報名數(shù)據(jù)統(tǒng)計

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='試卷成績'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 試卷成績

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='試卷成績匯總'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 試卷成績匯總

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='費用數(shù)據(jù)統(tǒng)計'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 費用數(shù)據(jù)統(tǒng)計

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='閱卷工作任務(wù)安排'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 閱卷工作任務(wù)安排

end if;

?

if exists(

???select 1 from sys.systable

???where table_name='閱卷老師'

?????and table_type in ('BASE', 'GBL TEMP')

) then

????drop table 閱卷老師

end if;

?

/*==============================================================*/

/* Table: 查詢&報名 ???????????????????????????????????????*/

/*==============================================================*/

create table 查詢和報名

(

???考試科目編號 ??????????????integer ???????????????????????not null,

???考生準(zhǔn)考證號碼 ?????????????integer ???????????????????????not null,

???考生賬號 ????????????????integer ???????????????????????not null,

???考生證件號 ???????????????integer ???????????????????????not null,

???考試信息查詢 ??????????????char(10) ??????????????????????null,

???考試報名 ????????????????char(10) ??????????????????????null,

???準(zhǔn)考證打印打印 ?????????????char(10) ??????????????????????null,

???constraint PK_查詢和報名 primary key (考試科目編號, 考生準(zhǔn)考證號碼, 考生賬號, 考生證件號)

);

alter table 查詢和報名 DROP CONSTRAINT FK_ASSOCIAT_查詢和報名_考試信息內(nèi)容

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ??????????????????????????????????????*/

/*==============================================================*/

INSERT INTO 查詢和報名 (考試科目編號, 考生準(zhǔn)考證號碼, 考生賬號, 考生證件號, 考試信息查詢, 考試報名,準(zhǔn)考證打印打印)

VALUES (1, 2100507219, 549949,10004, NULL , NULL, NULL);

?

/*==============================================================*/

/* Table: 上傳成績 ?????????????????????????????????????????????????*/

/*==============================================================*/

create table 上傳成績

(

???準(zhǔn)考證號 ????????????????integer ???????????????????????not null,

???閱卷老師證件號 ?????????????integer ???????????????????????not null,

???constraint PK_上傳成績 primary key (準(zhǔn)考證號, 閱卷老師證件號)

);

?

/*==============================================================*/

/* Table: 公布&修改成績信息 ????????????????????????????????????????????*/

/*==============================================================*/

create table 公布和修改成績信息

(

???管理員賬號 ???????????????integer ???????????????????????not null,

???成績單證件號 ??????????????integer ???????????????????????not null,

???成績公布日期 ??????????????timestamp ?????????????????????not null,

???成績公布修改日期 ????????????DATETIME ?????????????????????null,

???constraint PK_公布和修改成績信息 primary key (管理員賬號, 成績單證件號)

);

?

/*==============================================================*/

/* Table: 公示公告表 ????????????????????????????????????????????????*/

/*==============================================================*/

create table 公示公告表

(

???公告編號 ????????????????integer ???????????????????????not null,

???考生賬號 ????????????????integer ???????????????????????not null,

???考生證件號 ???????????????integer ???????????????????????not null,

???公告標(biāo)題 ????????????????varchar ??????????????????not null,

???公告內(nèi)容 ????????????????varchar ??????????????????not null,

???constraint PK_公示公告表 primary key (公告編號)

);

alter table 公示公告表

alter column 公告標(biāo)題 varchar(20) ??????????????????not null

alter table 公示公告表

alter column 公告內(nèi)容 varchar(100) ??????????????????not null

/*==============================================================*/

/* 數(shù)據(jù)錄入 ????????????????????????????????????????????*/

/*==============================================================*/

-- 插入測試數(shù)據(jù)到公示公告表

INSERT INTO 公示公告表 (公告編號, 考生賬號, 考生證件號, 公告標(biāo)題, 公告內(nèi)容)

VALUES

??(1001, 123456, 10001, '考試公告', '本次考試將于6月10日舉行,請考生做好準(zhǔn)備。'),

??(1002, 123456, 10001, '成績公示', '考試成績已經(jīng)公示,請考生前往查詢自己的成績。'),

??(1003, 987654, 10002, '補考安排', '未通過科目的考生請注意,補考將于6月15日進行,請?zhí)崆白龊脺?zhǔn)備。');

?

?

/*==============================================================*/

/* View:公告公示表 ???????????????????????????????????????????????*/

/*==============================================================*/

create view 公告公示表

as

select 公告標(biāo)題,公告內(nèi)容

from 公示公告表

?

/*==============================================================*/

/* Table: 發(fā)布&修改公示公告表 ???????????????????????????????????????????*/

/*==============================================================*/

create table 發(fā)布和修改公示公告表

(

???管理員賬號 ???????????????integer ???????????????????????not null,

???公告編號 ????????????????integer ???????????????????????not null,

???發(fā)布公告公示表日期 ???????????timestamp ?????????????????????not null,

???修改公告公示表日期 ???????????DATETIME ??????????????????????null,

???constraint PK_發(fā)布和修改公示公告表 primary key (管理員賬號, 公告編號)

);

?

/*==============================================================*/

/* Table: 發(fā)布&修改考試信息 ????????????????????????????????????????????*/

/*==============================================================*/

create table 發(fā)布和修改考試信息

(

???管理員賬號 ???????????????integer ???????????????????????not null,

???考試科目編號 ??????????????integer ???????????????????????not null,

???考生準(zhǔn)考證號碼 ?????????????integer ???????????????????????not null,

???發(fā)布考試信息時間 ????????????timestamp ?????????????????????not null,

???修改考試信息時間 ????????????DATETIME ?????????????????????null,

???constraint PK_發(fā)布和修改考試信息 primary key (管理員賬號, 考試科目編號, 考生準(zhǔn)考證號碼)

);

?

/*==============================================================*/

/* Table: 成績查詢&打印 ??????????????????????????????????????????????*/

/*==============================================================*/

create table 成績查詢和打印

(

???成績單證件號 ??????????????integer ???????????????????????not null,

???成績結(jié)果質(zhì)疑反饋 ??????????varchar ??????????????????null,

???成績單日期 ???????????????timestamp ?????????????????????null

);

?

/*==============================================================*/

/* Table: 成績結(jié)果查詢 ???????????????????????????????????????????????*/

/*==============================================================*/

create table 成績結(jié)果查詢

(

???成績單證件號 ??????????????integer ???????????????????????not null,

???考試報名科目 ??????????????varchar ??????????????????not null,

???考試成績 ????????????????float(3) ??????????????????????not null,

???constraint PK_成績結(jié)果查詢 primary key (成績單證件號)

);

alter table 成績結(jié)果查詢

alter column 考試報名科目 varchar(20) ?not null

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ??????????????????????????????????????????????*/

/*==============================================================*/

-- 插入測試數(shù)據(jù)到成績結(jié)果查詢表

INSERT INTO 成績結(jié)果查詢 (成績單證件號, 考試報名科目, 考試成績)

VALUES

(20002,'計算機二級',95.5)

(20001, '計算機二級', 85.5)

?

/*==============================================================*/

/* View:成績結(jié)果查詢表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 成績結(jié)果查詢表

as

select 成績單證件號,考試報名科目,考試成績

from 成績結(jié)果查詢

?

/*==============================================================*/

/* Table: 報名費用 ?????????????????????????????????????????????????*/

/*==============================================================*/

create table 報名費用

(

???費用金額 ????????????????float(5) ??????????????????????not null,

???費用支付方式 ??????????????varchar ??????????????????not null

);

alter table 報名費用

alter column 費用支付方式 varchar(10) not null

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ?????????????????????????????????????????????????*/

/*==============================================================*/

-- 插入測試數(shù)據(jù)到報名費用表

INSERT INTO 報名費用 (費用金額, 費用支付方式)

VALUES

??(30.00, '支付寶'),

??(30.00, '微信支付'),

??(30.00, '銀行轉(zhuǎn)賬');

?

/*==============================================================*/

/* View:報名費用表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 報名費用表

as

select 費用金額,費用支付方式

from 報名費用

?

/*==============================================================*/

/* Table: 監(jiān)考人員 ?????????????????????????????????????????????????*/

/*==============================================================*/

create table 監(jiān)考人員

(

???監(jiān)考人員證件號 ?????????????integer ???????????????????????not null,

???監(jiān)考人員姓名 ?????????????varchar ??????????????????not null,

???監(jiān)考人員性別 ??????????????smallint ??????????????????????not null,

???constraint PK_監(jiān)考人員 primary key (監(jiān)考人員證件號)

);

ALTER TABLE 監(jiān)考人員

ALTER COLUMN 監(jiān)考人員姓名 varchar(8) NOT NULL;

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ?????????????????????????????????????????????????*/

/*==============================================================*/

-- 插入測試數(shù)據(jù)到監(jiān)考人員表

INSERT INTO 監(jiān)考人員 (監(jiān)考人員證件號, 監(jiān)考人員姓名, 監(jiān)考人員性別)

VALUES

??(123486, '王五', 1),

??(654421, '花花', 2);

?

/*==============================================================*/

/* PROCEDURE: 監(jiān)考人員過程 ?????????????????????????????????????????????????*/

/*==============================================================*/

CREATE PROCEDURE 監(jiān)考人員過程

????@InvigilatorIDCard integer,

????@InvigilatorName VARCHAR(10),

????@InvigilatorGender smallint

AS

BEGIN

????INSERT INTO 監(jiān)考人員 (監(jiān)考人員證件號, 監(jiān)考人員姓名, 監(jiān)考人員性別)

????VALUES (@InvigilatorIDCard, @InvigilatorName, @InvigilatorGender)

END

?

?

/*==============================================================*/

/* View:監(jiān)考人員表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 監(jiān)考人員表

as

select 監(jiān)考人員證件號,監(jiān)考人員姓名,監(jiān)考人員性別

from 監(jiān)考人員

?

/*==============================================================*/

/* Table: 監(jiān)考工作任務(wù)安排 ?????????????????????????????????????????????*/

/*==============================================================*/

create table 監(jiān)考工作任務(wù)安排

(

???監(jiān)考人員證件號 ?????????????integer ???????????????????????not null,

???管理員賬號 ???????????????integer ???????????????????????not null,

???監(jiān)考地點 ?????????????????varchar ??????????????????not null,

???監(jiān)考時間 ????????????????timestamp ?????????????????????not null,

???監(jiān)考試室地點 ???????????????varchar ??????????????????not null,

???考生信息名單 ???????????????varchar ??????????????????not null,

???試卷領(lǐng)取地點 ???????????????varchar ??????????????????not null,

???試卷收集提交地點 ?????????????varchar ??????????????????not null,

???constraint PK_監(jiān)考工作任務(wù)安排 primary key (監(jiān)考人員證件號, 管理員賬號)

);

alter table 監(jiān)考工作任務(wù)安排

alter column 監(jiān)考地點 varchar(10) not null

alter table 監(jiān)考工作任務(wù)安排

alter column 監(jiān)考試室地點 varchar(50) ?not null

alter table 監(jiān)考工作任務(wù)安排

alter column 考生信息名單 varchar(100) not null

alter table 監(jiān)考工作任務(wù)安排

alter column 試卷領(lǐng)取地點 varchar(50) ?not null

alter table 監(jiān)考工作任務(wù)安排

alter column 試卷收集提交地點 varchar(50) ?not null

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ????????????????????????????????????????????*/

/*==============================================================*/

-- 插入測試數(shù)據(jù)到監(jiān)考工作任務(wù)安排表,排除時間戳列

INSERT INTO 監(jiān)考工作任務(wù)安排 (監(jiān)考人員證件號, 管理員賬號, 監(jiān)考地點, 監(jiān)考試室地點, 考生信息名單, 試卷領(lǐng)取地點, 試卷收集提交地點)

VALUES

??(123486, 8888, '考場A', 'A101', '考生名單A', '辦公室A', '辦公室B'),

??(654421, 8888, '考場C', 'C301', '考生名單C', '辦公室E', '辦公室F');

?

/*==============================================================*/

/* View:監(jiān)考工作任務(wù)安排表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 監(jiān)考工作任務(wù)安排表

as

select 監(jiān)考人員證件號 as 監(jiān)考人員,監(jiān)考地點,監(jiān)考時間,監(jiān)考試室地點,考生信息名單,試卷領(lǐng)取地點,試卷收集提交地點

from 監(jiān)考工作任務(wù)安排

?

/*==============================================================*/

/* Table: 管理員 ??????????????????????????????????????????????????*/

/*==============================================================*/

create table 管理員

(

???管理員賬號 ???????????????integer ???????????????????????not null,

???管理員姓名 ????????????????varchar ??????????????????not null,

???管理員性別 ???????????????smallint ??????????????????????not null,

???管理員賬戶密碼 ??????????????varchar ??????????????????not null,

???constraint PK_管理員 primary key (管理員賬號)

);

alter table 管理員

alter column 管理員姓名 varchar (10) not null

alter table 管理員

alter column 管理員賬戶密碼 varchar (8) not null

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ?????????????????????????????????????????????????*/

/*==============================================================*/

-- 插入測試數(shù)據(jù)到管理員表

INSERT INTO 管理員 (管理員賬號, 管理員姓名, 管理員性別, 管理員賬戶密碼)

VALUES

??(8888, '黃帝', 1, '11223344')

?

/*==============================================================*/

/* PROCEDURE: 管理員存儲過程 ?????????????????????????????????????????????????*/

/*==============================================================*/

CREATE PROCEDURE 管理員存儲過程

????@AdminAccount integer,

????@AdminName VARCHAR(10),

????@AdminGender smallint,

????@AdminPassword VARCHAR(8)

AS

BEGIN

????INSERT INTO 管理員 (管理員賬號, 管理員姓名, 管理員性別, 管理員賬戶密碼)

????VALUES (@AdminAccount, @AdminName, @AdminGender, @AdminPassword)

END

?

?

/*==============================================================*/

/* Table: 繳費 ???????????????????????????????????????????????????*/

/*==============================================================*/

create table 繳費

(

???費用發(fā)票電子版下載 ???????????char(10) ??????????????????????null

);

?

/*==============================================================*/

/* Table: 考生 ???????????????????????????????????????????????????*/

/*==============================================================*/

create table 考生

(

???考生賬號 ????????????????integer ???????????????????????not null,

???考生賬戶密碼 ???????????????varchar ??????????????????not null,

???考生姓名 ????????????????varchar ??????????????????not null,

???考生證件號 ???????????????integer ???????????????????????not null,

???考生性別 ????????????????smallint ??????????????????????not null,

???考生所在地 ????????????????varchar ??????????????????not null,

???constraint PK_考生 primary key (考生賬號, 考生證件號)

);

ALTER TABLE 考生

alter COLUMN 考生賬戶密碼 varchar(8) NOT NULL;

ALTER TABLE 考生

alter COLUMN 考生姓名 varchar(10) NOT NULL;

ALTER TABLE 考生

alter COLUMN 考生所在地 varchar(10) NOT NULL;

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ?????????????????????????????????????????????????*/

/*==============================================================*/

INSERT INTO 考生 (考生賬號, 考生賬戶密碼, 考生姓名, 考生證件號, 考生性別, 考生所在地)

VALUES

?

(123456, '12345678', '張三', 10001, 1, '北京'),

(987654, '12345678', '李四', 10002, 2, '上海');

?

/*==============================================================*/

/* PROCEDURE: 考生存儲過程 ?????????????????????????????????????????????????*/

/*==============================================================*/

CREATE PROCEDURE 考生存儲過程

????@ExamineeAccount integer,

????@ExamineePassword VARCHAR(8),

????@ExamineeName varchar(10),

????@ExamineeIDCard integer,

????@ExamineeGender smallint,

????@ExamineeLocation ?varchar(10)

AS

BEGIN

????INSERT INTO 考生 (考生賬號, 考生賬戶密碼, 考生姓名, 考生證件號, 考生性別, 考生所在地)

????VALUES (@ExamineeAccount, @ExamineePassword, @ExamineeName, @ExamineeIDCard, @ExamineeGender, @ExamineeLocation)

END

?

?

/*==============================================================*/

/* View:考生表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 考生表

as

select 考生賬號 ,考生賬戶密碼,考生姓名,考生證件號,考生性別,考生所在地

from 考生

?

/*==============================================================*/

/* Table: 考試信息內(nèi)容 ???????????????????????????????????????????????*/

/*==============================================================*/

create table 考試信息內(nèi)容

(

???考試科目編號 ??????????????integer ???????????????????????not null,

???考生準(zhǔn)考證號碼 ?????????????integer ???????????????????????not null,

???考試報名開始和截止日期 ?????????DATETIME ????????????????????not null,

???考試舉辦方 ????????????????varchar ??????????????????not null,

???考試地點 ?????????????????varchar ??????????????????not null,

???考試試室 ?????????????????varchar ??????????????????not null,

???考試日期 ????????????????timestamp ?????????????????????not null,

???考試時間 ????????????????DATETIME ?????????????????????not null,

???constraint PK_考試信息內(nèi)容 primary key (考試科目編號, 考生準(zhǔn)考證號碼)

);

ALTER TABLE 考試信息內(nèi)容

ALTER COLUMN 考試舉辦方 varchar(50) NOT NULL;

ALTER TABLE 考試信息內(nèi)容

ALTER COLUMN 考試地點 varchar(50) NOT NULL;

ALTER TABLE 考試信息內(nèi)容

ALTER COLUMN 考試試室 varchar(10) NOT NULL;

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ?????????????????????????????????????????????????*/

/*==============================================================*/

INSERT INTO 考試信息內(nèi)容 (考試科目編號, 考生準(zhǔn)考證號碼, 考試報名開始和截止日期, 考試舉辦方, 考試地點, 考試試室, 考試時間)

VALUES

(1, 10001, '2023-06-20 00:00:00', 'ABC考試機構(gòu)', '考試中心1', 'A101', '2023-06-21 09:00:00'),

(1, 10002, '2023-06-20 00:00:00', 'ABC考試機構(gòu)', '考試中心1', 'A102', '2023-06-21 13:00:00'),

(2, 10001, '2023-06-22 00:00:00', 'XYZ考試機構(gòu)', '考試中心2', 'B201', '2023-06-23 10:00:00');

?

/*==============================================================*/

/* View:考試信息內(nèi)容表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 考試信息內(nèi)容表

as

select 考試科目編號 as 考試科目 ,考生準(zhǔn)考證號碼,考試報名開始和截止日期,考試舉辦方,考試地點,考試試室,考試日期,考試時間

from 考試信息內(nèi)容

?

/*==============================================================*/

/* Table: 考試報名數(shù)據(jù)統(tǒng)計 ?????????????????????????????????????????????*/

/*==============================================================*/

create table 考試報名數(shù)據(jù)統(tǒng)計

(

???管理員賬號 ???????????????integer ???????????????????????not null,

???考試科目編號 ??????????????integer ???????????????????????not null,

???考生準(zhǔn)考證號碼 ?????????????integer ???????????????????????not null,

???考生數(shù)量 ????????????????integer ???????????????????????null,

???報名科目統(tǒng)計 ??????????????integer ???????????????????????null,

???constraint PK_考試報名數(shù)據(jù)統(tǒng)計 primary key (管理員賬號, 考試科目編號, 考生準(zhǔn)考證號碼)

);

ALTER TABLE 考試報名數(shù)據(jù)統(tǒng)計 DROP CONSTRAINT FK_考試報名數(shù)據(jù)統(tǒng)計_考試報名數(shù)據(jù)統(tǒng)計_考試信息內(nèi)容;

ALTER TABLE 考試報名數(shù)據(jù)統(tǒng)計 DROP CONSTRAINT PK_考試報名數(shù)據(jù)統(tǒng)計;

ALTER TABLE 考試報名數(shù)據(jù)統(tǒng)計 DROP COLUMN 考生準(zhǔn)考證號碼;

ALTER TABLE 考試報名數(shù)據(jù)統(tǒng)計 ADD CONSTRAINT PK_考試報名數(shù)據(jù)統(tǒng)計 PRIMARY KEY (管理員賬號, 考試科目編號);

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ????????????????????????????????????????????*/

/*==============================================================*/

INSERT INTO 考試報名數(shù)據(jù)統(tǒng)計 (管理員賬號, 考試科目編號, 考生數(shù)量, 報名科目統(tǒng)計)

VALUES

(8888, 1, 2, 2)

?

*==============================================================*/

/* View:考試報名數(shù)據(jù)統(tǒng)計表 ?????????????????????????????????????????????*/

/*==============================================================*/

CREATE VIEW 考試報名數(shù)據(jù)統(tǒng)計表

AS

SELECT 考試科目編號 AS 考試科目, 考生數(shù)量, 報名科目統(tǒng)計

FROM 考試報名數(shù)據(jù)統(tǒng)計;

?

/*==============================================================*/

/* Table: 試卷成績 ?????????????????????????????????????????????????*/

/*==============================================================*/

create table 試卷成績

(

???準(zhǔn)考證號 ????????????????integer ???????????????????????not null,

???閱卷成績 ????????????????float(3) ??????????????????????not null,

???constraint PK_試卷成績 primary key (準(zhǔn)考證號)

);

?

/*==============================================================*/

/* PROCEDURE: 試卷成績存儲過程 ?????????????????????????????????????????????????*/

/*==============================================================*/

CREATE PROCEDURE 試卷成績存儲過程

@ExamID int,

@Score float(3)

AS

BEGIN

????????INSERT INTO 試卷成績信息 (準(zhǔn)考證號, 閱卷成績)

????????VALUES (@ExamID, @Score)

????END

?

?

/*==============================================================*/

/* Table: 試卷成績匯總 ???????????????????????????????????????????????*/

/*==============================================================*/

create table 試卷成績匯總

(

???準(zhǔn)考證號 ????????????????integer ???????????????????????not null,

???管理員賬號 ???????????????integer ???????????????????????not null,

???試卷科目分類 ??????????????varchar ??????????????????not null,

???試卷成績匯總 ??????????????float(4) ??????????????????????not null,

???constraint PK_試卷成績匯總 primary key (準(zhǔn)考證號, 管理員賬號)

);

alter table 試卷成績匯總 DROP CONSTRAINT FK_試卷成績匯總_試卷成績匯總_試卷成績

alter table 試卷成績匯總 DROP CONSTRAINT PK_試卷成績匯總

alter table 試卷成績匯總

alter column 試卷科目分類 varchar(10) not null

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ??????????????????????????????????????????????*/

/*==============================================================*/

INSERT INTO 試卷成績匯總 (準(zhǔn)考證號, 管理員賬號, 試卷科目分類, 試卷成績匯總)

VALUES

(10001, 8888, '計算機二級', 85.5),

(10002, 8888, '計算機二級', 95.5)

?

*==============================================================*/

/* View:試卷成績匯總表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 試卷成績匯總表

as

select 試卷科目分類 ,試卷成績匯總

from 試卷成績匯總

?

/*==============================================================*/

/* Table: 費用數(shù)據(jù)統(tǒng)計 ???????????????????????????????????????????????*/

/*==============================================================*/

create table 費用數(shù)據(jù)統(tǒng)計

(

???管理員賬號 ???????????????integer ???????????????????????not null,

???費用金額總數(shù) ??????????????float(20) ?????????????????????null,

???constraint PK_費用數(shù)據(jù)統(tǒng)計 primary key (管理員賬號)

);

?

*==============================================================*/

/* View:費用數(shù)據(jù)統(tǒng)計表 ?????????????????????????????????????????????*/

/*==============================================================*/

INSERT INTO 費用數(shù)據(jù)統(tǒng)計 (管理員賬號, 費用金額總數(shù))

VALUES

(8888, 60)

?

*==============================================================*/

/* View:費用數(shù)據(jù)統(tǒng)計表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 費用數(shù)據(jù)統(tǒng)計表

as

select 費用金額總數(shù)

from 費用數(shù)據(jù)統(tǒng)計

?

/*==============================================================*/

/* Table: 閱卷工作任務(wù)安排 ?????????????????????????????????????????????*/

/*==============================================================*/

create table 閱卷工作任務(wù)安排

(

???閱卷老師證件號 ?????????????integer ???????????????????????not null,

???管理員賬號 ???????????????integer ???????????????????????not null,

???閱卷科目 ?????????????????varchar ??????????????????null,

???閱卷板塊 ?????????????????varchar ??????????????????null,

???閱卷截止時間 ??????????????timestamp ?????????????????????null,

???閱卷量 ?????????????????integer ???????????????????????null,

???constraint PK_閱卷工作任務(wù)安排 primary key (閱卷老師證件號, 管理員賬號)

);

alter table 閱卷工作任務(wù)安排

alter column 閱卷科目 varchar(10) ??????????????????null

alter table 閱卷工作任務(wù)安排

alter column 閱卷板塊 varchar(10) ??????????????????null

?

?

*==============================================================*/

/* View:閱卷工作任務(wù)安排表 ?????????????????????????????????????????????*/

/*==============================================================*/

INSERT INTO 閱卷工作任務(wù)安排 (閱卷老師證件號, 管理員賬號, 閱卷科目, 閱卷板塊, 閱卷截止時間, 閱卷量)

VALUES (12345, 8888, '計算機二級', 'A卷', DEFAULT, 50);

?

/*==============================================================*/

/* View:閱卷工作任務(wù)安排表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 閱卷工作任務(wù)安排表

as

select 閱卷老師證件號,閱卷科目,閱卷板塊,閱卷截止時間

from 閱卷工作任務(wù)安排

?

/*==============================================================*/

/* Table: 閱卷老師 ?????????????????????????????????????????????????*/

/*==============================================================*/

create table 閱卷老師

(

???閱卷老師證件號 ?????????????integer ???????????????????????not null,

???閱卷考試姓名 ???????????????varchar ??????????????????not null,

???閱卷老師性別 ??????????????smallint ??????????????????????not null,

???閱卷老師賬號 ??????????????integer ???????????????????????not null,

???閱卷老師賬號密碼 ?????????????varchar ??????????????????not null,

???constraint PK_閱卷老師 primary key (閱卷老師證件號)

);

ALTER TABLE 閱卷老師

ALTER COLUMN 閱卷老師姓名 varchar(4) NOT NULL;

ALTER TABLE 閱卷老師

ALTER COLUMN 閱卷老師賬號密碼 varchar(6) NOT NULL;

EXEC sp_rename '閱卷老師.閱卷考試姓名', '閱卷老師姓名', 'COLUMN';

?

/*==============================================================*/

/* 數(shù)據(jù)錄入 ?????????????????????????????????????????????????*/

/*==============================================================*/

-- 插入測試數(shù)據(jù)到閱卷老師表

INSERT INTO 閱卷老師 (閱卷老師證件號, 閱卷老師姓名, 閱卷老師性別, 閱卷老師賬號, 閱卷老師賬號密碼)

VALUES

??(12345, '張三', 1, 10001, '000000'),

??(67890, '李梅', 2, 10002, '000000');

?

/*==============================================================*/

/* PROCEDURE: 閱卷老師存儲過程 ?????????????????????????????????????????????????*/

/*==============================================================*/

CREATE PROCEDURE 閱卷老師存儲過程

@GPteacherID integer,

@GPteacherName varchar (4),

@GPteacherSex smallint,

@GPteacherAccount integer,

@GPteacherPassword varchar(6)

AS

BEGIN

????????INSERT INTO 閱卷老師 (閱卷老師證件號, 閱卷老師姓名,閱卷老師性別,閱卷老師賬號,閱卷老師賬號密碼)

????????VALUES (@GPteacherID, @GPteacherName,@GPteacherSex,@GPteacherAccount,@GPteacherPassword)

????END

EXEC 閱卷老師存儲過程

????@GPteacherID = 520121,

????@GPteacherName = '黃培滇',

????@GPteacherSex = 1,

????@GPteacherAccount = 10003,

????@GPteacherPassword = '000000';

?

?

*==============================================================*/

/* View:閱卷老師表 ?????????????????????????????????????????????*/

/*==============================================================*/

create view 閱卷老師表

as

select 閱卷老師證件號,閱卷老師姓名,閱卷老師性別,閱卷老師賬號,閱卷老師賬號密碼

from 閱卷老師

?

*==============================================================*/

/* KEY:設(shè)置 ???????????????????????????????????????????*/

/*==============================================================*/

alter table 查詢和報名

???add constraint FK_ASSOCIAT_查詢和報名_考試信息內(nèi)容 foreign key (考試科目編號, 考生準(zhǔn)考證號碼)

??????references 考試信息內(nèi)容 (考試科目編號, 考生準(zhǔn)考證號碼)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 查詢和報名

???add constraint FK_ASSOCIAT_查詢和報名2_考生 foreign key (考生賬號, 考生證件號)

??????references 考生 (考生賬號, 考生證件號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 上傳成績

???add constraint FK_上傳成績_上傳成績_試卷成績 foreign key (準(zhǔn)考證號)

??????references 試卷成績 (準(zhǔn)考證號)

?????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 上傳成績

???add constraint FK_上傳成績_上傳成績2_閱卷老師 foreign key (閱卷老師證件號)

??????references 閱卷老師 (閱卷老師證件號)

?????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 公布和修改成績信息

???add constraint FK_公布和修改成績信_公布和修改成績信息_成績結(jié)果查詢 foreign key (成績單證件號)

??????references 成績結(jié)果查詢 (成績單證件號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 公布和修改成績信息

???add constraint FK_公布和修改成績信_公布和修改成績信息_管理員 foreign key (管理員賬號)

??????references 管理員 (管理員賬號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 公示公告表

???add constraint FK_公示公告表_查看公示公告表_考生 foreign key (考生賬號, 考生證件號)

??????references 考生 (考生賬號, 考生證件號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 發(fā)布和修改公示公告表

???add constraint FK_發(fā)布和修改公示公_發(fā)布和修改公示公告_公示公告表 foreign key (公告編號)

??????references 公示公告表 (公告編號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 發(fā)布和修改公示公告表

???add constraint FK_發(fā)布和修改公示公_發(fā)布和修改公示公告_管理員 foreign key (管理員賬號)

??????references 管理員 (管理員賬號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 發(fā)布和修改考試信息

???add constraint FK_發(fā)布和修改考試信_發(fā)布和修改考試信息_考試信息內(nèi)容 foreign key (考試科目編號, 考生準(zhǔn)考證號碼)

??????references 考試信息內(nèi)容 (考試科目編號, 考生準(zhǔn)考證號碼)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 發(fā)布和修改考試信息

???add constraint FK_發(fā)布和修改考試信_發(fā)布和修改考試信息_管理員 foreign key (管理員賬號)

??????references 管理員 (管理員賬號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 成績查詢和打印

???add constraint FK_成績查詢和打印_成績查詢和打印_成績結(jié)果查詢 foreign key (成績單證件號)

??????references 成績結(jié)果查詢 (成績單證件號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 監(jiān)考工作任務(wù)安排

???add constraint FK_監(jiān)考工作任務(wù)安排_監(jiān)考工作任務(wù)安排_管理員 foreign key (管理員賬號)

??????references 管理員 (管理員賬號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

?

alter table 考試報名數(shù)據(jù)統(tǒng)計

???add constraint FK_考試報名數(shù)據(jù)統(tǒng)計_考試報名數(shù)據(jù)統(tǒng)計_考試信息內(nèi)容 foreign key (考試科目編號, 考生準(zhǔn)考證號碼)

??????references 考試信息內(nèi)容 (考試科目編號, 考生準(zhǔn)考證號碼)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 考試報名數(shù)據(jù)統(tǒng)計

???add constraint FK_考試報名數(shù)據(jù)統(tǒng)計_考試報名數(shù)據(jù)統(tǒng)計2_管理員 foreign key (管理員賬號)

??????references 管理員 (管理員賬號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 試卷成績匯總

???add constraint FK_試卷成績匯總_試卷成績匯總_試卷成績 foreign key (準(zhǔn)考證號)

??????references 試卷成績 (準(zhǔn)考證號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 試卷成績匯總

???add constraint FK_試卷成績匯總_試卷成績匯總2_管理員 foreign key (管理員賬號)

??????references 管理員 (管理員賬號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

?

alter table 費用數(shù)據(jù)統(tǒng)計

???add constraint FK_費用數(shù)據(jù)統(tǒng)計_費用數(shù)據(jù)統(tǒng)計2_管理員 foreign key (管理員賬號)

??????references 管理員 (管理員賬號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 閱卷工作任務(wù)安排

???add constraint FK_閱卷工作任務(wù)安排_閱卷工作任務(wù)安排_閱卷老師 foreign key (閱卷老師證件號)

??????references 閱卷老師 (閱卷老師證件號)

??????ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

alter table 閱卷工作任務(wù)安排

???add constraint FK_閱卷工作任務(wù)安排_閱卷工作任務(wù)安排2_管理員 foreign key (管理員賬號)

??????references 管理員 (管理員賬號)

??ON UPDATE NO ACTION

ON DELETE NO ACTION;

?

*==============================================================*/

/* 用戶:考生 ????????????????????????????????????????????*/

/*==============================================================*/

-- 創(chuàng)建用戶 '考生',密碼為 '000000'

CREATE LOGIN 考生 WITH PASSWORD = '000000';

-- 創(chuàng)建用戶 '考生'

CREATE USER 考生 FOR LOGIN 考生;

-- 賦予用戶 '考生' 對表 '報名費用' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[報名費用] TO 考生;

-- 賦予用戶 '考生' 對表 '公示公告表' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[查詢和報名] TO 考生;

-- 賦予用戶 '考生' 對表 '成績結(jié)果查詢' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[成績結(jié)果查詢] TO 考生;

-- 賦予用戶 '考生' 對表 '公示公告表' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[公示公告表] TO 考生;

-- 賦予用戶 '考生' 對表 '繳費' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[繳費] TO 考生;

-- 賦予用戶 '考生' 對表 '考生' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[考生] TO 考生;

-- 賦予用戶 '考生' 對表 '考試信息' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[考試信息內(nèi)容] TO 考生;

-- 賦予用戶 '考生' 對表 '考生' 的 UPDATE 權(quán)限

GRANT UPDATE ON [dbo].[考生] TO 考生;

?

*==============================================================*/

/* 用戶:管理員 ????????????????????????????????????????????*/

/*==============================================================*/

-- 創(chuàng)建用戶 '管理員',密碼為 'VIP888'

CREATE LOGIN 管理員 WITH PASSWORD = 'VIP888';

-- 創(chuàng)建用戶 '管理員'

CREATE USER 管理員 FOR LOGIN 管理員;

-- 賦予用戶 '管理員' 對表 '報名費用' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[報名費用] TO 管理員;

-- 賦予用戶 '管理員' 對表 '費用數(shù)據(jù)統(tǒng)計' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[費用數(shù)據(jù)統(tǒng)計] TO 管理員;

-- 賦予用戶 '管理員' 對表 '公示公告表' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[公示公告表] TO 管理員;

-- 賦予用戶 '管理員' 對表 '管理員' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[管理員] TO 管理員;

-- 賦予用戶 '管理員' 對表 '監(jiān)考工作任務(wù)安排' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[監(jiān)考工作任務(wù)安排] TO 管理員;

-- 賦予用戶 '管理員' 對表 '監(jiān)考人員' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[監(jiān)考人員] TO 管理員;

-- 賦予用戶 '管理員' 對表 '考生' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[考生] TO 管理員;

-- 賦予用戶 '管理員' 對表 '考試報名數(shù)據(jù)統(tǒng)計' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[考試報名數(shù)據(jù)統(tǒng)計] TO 管理員;

-- 賦予用戶 '管理員' 對表 '考試信息內(nèi)容' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[考試信息內(nèi)容] TO 管理員;

-- 賦予用戶 '管理員' 對表 '試卷成績' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[試卷成績] TO 管理員;

-- 賦予用戶 '管理員' 對表 '試卷成績匯總' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[試卷成績匯總] TO 管理員;

-- 賦予用戶 '管理員' 對表 '閱卷工作任務(wù)安排' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[閱卷工作任務(wù)安排] TO 管理員;

-- 賦予用戶 '管理員' 對表 '閱卷老師' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[閱卷老師] TO 管理員;

?

*==============================================================*/

/* 用戶:監(jiān)考老師 ???????????????????????????????????????????*/

/*==============================================================*/

-- 創(chuàng)建用戶 '監(jiān)考人員',密碼為 'watcher'

CREATE LOGIN 監(jiān)考人員 WITH PASSWORD = 'watcher';

-- 創(chuàng)建用戶 '監(jiān)考人員'

CREATE USER 監(jiān)考人員 FOR LOGIN 監(jiān)考人員;

-- 賦予用戶 '監(jiān)考人員' 對表 '監(jiān)考人員' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[監(jiān)考人員] TO 監(jiān)考人員;

-- 賦予用戶 '監(jiān)考人員' 對表 '監(jiān)考工作任務(wù)安排' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[監(jiān)考工作任務(wù)安排] TO 監(jiān)考人員;

?

*==============================================================*/

/* 用戶:閱卷老師 ???????????????????????????????????????????*/

/*==============================================================*/

-- 創(chuàng)建用戶 '閱卷人員',密碼為 'LOVEteac'

CREATE LOGIN 閱卷人員 WITH PASSWORD = 'LOVEteac';

-- 創(chuàng)建用戶 '閱卷人員'

CREATE USER 閱卷人員 FOR LOGIN 閱卷人員;

-- 賦予用戶 '閱卷人員' 對表 '閱卷老師' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[閱卷老師] TO 閱卷人員;

-- 賦予用戶 '閱卷人員' 對表 '上傳成績' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[上傳成績] TO 閱卷人員;

-- 賦予用戶 '閱卷人員' 對表 '試卷成績' 的 SELECT 和 UPDATE 權(quán)限

GRANT SELECT, UPDATE ON [dbo].[試卷成績] TO 閱卷人員;

-- 賦予用戶 '閱卷人員' 對表 '閱卷工作任務(wù)安排' 的 SELECT 權(quán)限

GRANT SELECT ON [dbo].[閱卷工作任務(wù)安排] TO 閱卷人員;

?

*==============================================================*/

/* 觸發(fā)器:考生 ??????????????????????????????????????????*/

/*==============================================================*/

CREATE TRIGGER 插入觸發(fā)器

ON [dbo].[考生]

AFTER INSERT

AS

BEGIN

??-- 生成6位數(shù)的自增數(shù)字作為學(xué)號

??DECLARE @max_id INT, @id INT;

??SELECT @max_id = MAX(CAST(RIGHT(考生賬號, 6) AS INT)) FROM [dbo].[考生];

??SET @max_id = ISNULL(@max_id, 0);

??SET @id = @max_id + 1;

??

??-- 自動生成學(xué)生學(xué)號

??UPDATE [dbo].[考生] SET

????考生賬號 = RIGHT('000000' + CAST(@id AS VARCHAR(6)), 6)

??WHERE 考生賬號 IS NULL;

END;

?

CREATE TRIGGER 刪除觸發(fā)器

ON [dbo].[考生]

INSTEAD OF DELETE

AS

BEGIN

??DECLARE @exist_exam INT;

??SELECT @exist_exam = COUNT(*) FROM [dbo].[查詢和報名] WHERE 考生賬號 IN (SELECT 考生賬號 FROM deleted);

??

??IF @exist_exam > 0

??BEGIN

????RAISERROR ('該考生已報名考試,不允許刪除',16,1);

????ROLLBACK TRANSACTION;

????RETURN;

??END

??ELSE

??BEGIN

????DELETE FROM 考生 WHERE 考生賬號 IN (SELECT 考生賬號 FROM deleted);

??END

END;

?

-- 創(chuàng)建更新觸發(fā)器

CREATE TRIGGER 更新觸發(fā)器

ON [dbo].[考生]

FOR UPDATE

AS

BEGIN

????IF UPDATE(考生賬戶密碼)

????BEGIN

????????PRINT '考生賬戶密碼發(fā)生了修改';

????END

?

????IF UPDATE(考生所在地)

????BEGIN

????????PRINT '考生所在地發(fā)生了修改';

????END

END;

?

*==============================================================*/

/* 測試 ????????????????????????????????????????????*/

/*==============================================================*/

--視圖

select * from [dbo].[報名費用表]

select * from[dbo].[成績結(jié)果查詢表]

select * from[dbo].[費用數(shù)據(jù)統(tǒng)計表]

select * from[dbo].[公告公示表]

select * from[dbo].[監(jiān)考工作任務(wù)安排表]

select * from[dbo].[監(jiān)考人員表]

select * from[dbo].[考生表]

select * from[dbo].[考試報名數(shù)據(jù)統(tǒng)計表]

select * from[dbo].[考試信息內(nèi)容表]

select * from[dbo].[試卷成績匯總表]

select * from[dbo].[閱卷工作任務(wù)安排表]

select * from[dbo].[閱卷老師表]

?

--存儲過程

EXEC 監(jiān)考人員過程

????@InvigilatorIDCard = 664455,

????@InvigilatorName = '易*',

????@InvigilatorGender = 2;

?

EXEC 管理員存儲過程

????@AdminAccount = 9999,

????@AdminName = '鄭**',

????@AdminGender = 1,

@AdminPassword = '52sb6688'

?

EXEC 考生存儲過程

????@ExamineeAccount = 122446,

????@ExamineePassword = '12345678',

????@ExamineeName = '黃**',

????@ExamineeIDCard = 10003,

????@ExamineeGender = 2,

@ExamineeLocation = '廣東'

?

EXEC 閱卷老師存儲過程

????@GPteacherID = 520121,

????@GPteacherName = '黃*',

????@GPteacherSex = 1,

????@GPteacherAccount = 10003,

????@GPteacherPassword = '000000';

?

select * from[dbo].[管理員]

select * from[dbo].[監(jiān)考人員表]

select * from[dbo].[考生表]

select * from[dbo].[閱卷老師表]

?

--觸發(fā)器

--插入

INSERT INTO [dbo].[考生] (考生賬號, 考生賬戶密碼, 考生姓名, 考生證件號,考生性別, 考生所在地)

VALUES (549949, '123456', '陳琳', 10004 ,2,'廣西');

select * from[dbo].[考生]

--刪除

DELETE FROM [dbo].[考生] WHERE 考生賬號 = '10004'

select * from[dbo].[考生]

--更新

INSERT INTO 考生 (考生賬號, 考生賬戶密碼, 考生姓名, 考生證件號, 考生性別, 考生所在地)

VALUES (666888, '12345678', '江夏', 10006, 1, '南京');

UPDATE 考生

SET 考生賬戶密碼 = '654321', 考生所在地 = '廈門'

WHERE 考生賬號 = 666888;

select * from[dbo].[考生]


數(shù)據(jù)庫系統(tǒng)概論——程序員網(wǎng)上報名系統(tǒng)設(shè)計的評論 (共 條)

分享到微博請遵守國家法律
宣威市| 奉化市| 淮滨县| 阿拉善左旗| 洛阳市| 金寨县| 开原市| 吉安市| 英吉沙县| 丽水市| 永泰县| 南江县| 罗源县| 蒙城县| 棋牌| 屏边| 堆龙德庆县| 利辛县| 抚州市| 特克斯县| 忻州市| 百色市| 凤城市| 金溪县| 安义县| 师宗县| 广东省| 纳雍县| 湖州市| 青冈县| 三门县| 湟中县| 都安| 宜兰市| 信丰县| 固原市| 玉环县| 象州县| 兴山县| 金坛市| 志丹县|