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

正文內(nèi)容

數(shù)據(jù)庫課程設(shè)計工資管理系統(tǒng)-在線瀏覽

2024-10-10 17:43本頁面
  

【正文】 書號。〔2〕實體間的聯(lián)系根據(jù)聯(lián)系的類型,轉(zhuǎn)換如下: ① 1:n 的聯(lián)系:1:n 的聯(lián)系是比較普遍的聯(lián)系,其轉(zhuǎn)換比較直觀。如:崗位和員工的關(guān)系是1:n 的聯(lián)系。如:部門與員工的聯(lián)系是n:m 聯(lián)系。物理結(jié)構(gòu)可分兩步進行。數(shù)據(jù)庫實施是指建立數(shù)據(jù)庫,編制與調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫,并進行試運行。職工表工資表下面說明各表的字段名稱和數(shù)據(jù)類型:工資表:職工表:用戶表:第五章 詳細設(shè)計詳細設(shè)計階段主要是將系統(tǒng)中的每個模塊完成的功能進行具體描述。其中,退出系統(tǒng)實現(xiàn)流程很容易,只需要一行代碼即可;用戶登錄的實現(xiàn)流程是用戶在登錄窗口輸入用戶名稱和密碼,如果沒有用戶名和密碼可以進行注冊后再登錄,選擇了用戶角色后,單擊【登錄】按鈕進行提交,系統(tǒng)開始驗證用戶提交的登錄信息是否正確。 登錄界面如下: 代碼部分核心代碼設(shè)計: void CZHUCE::OnButton1(){UpdateData(TRUE)。()。UpdateData(FALSE)。} OnInitADOConn()。(“insert into 用戶表(用戶名,密碼)(39。,39。)”,m_username,m_password)。int fieldrow。var,adCmdText)。var)。()。()。return。m_pConnectionClose()。()。()。()。return。(“”)。Data Source=?!薄try{if(m_pConnection==NULL){OnInitADOConn()。m_pRecordsetOpen(sqlstr,(),adOpenDyna} catch(__error e){ ()。mic,adLockOptimistic,adCmdText)。:627UpdateData(TRUE)。return。CString str。%s39。%s39。%s39。%s39。%s39。%s39。m_pConnectionExecute((_bstr_t)str,NULL,adCmdText)。()。ClearAll()。{// TODO: Add your control notification handler code here} void CGXZHG::OnButton4(){UpdateData(TRUE)。return。CString bstrSQL。if(()!=IDOK){ }m_pConnectionExecute((_bstr_t)bstrSQL,NULL,adCmdText)。()。ClearAll()。UpdateData(FALSE)。=39?!?m_tiaojian)。(m_Type)。return。return。CString sql。if(()||m_Jibengz==NULL||()){AfxMessageBox(“編號不允許空值,請重新填寫!”)。return。float CString cstr1。(cstr1)。CString cstr2。(cstr2)。f4=calculator(f1f2)。CString cstr3。(cstr3)。(“%.2f”,f4)。CString str。(0)。(39。,39。,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f,%.2f)“,m_} void CTXGZ::ClearALL(){} void CTXGZ::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult){// TODO: Add your control notification handler code herem_pConnectionClose()。AddToGrid()。ClearALL()。m_Jintie=NULL。()。()。m_Jiaotongbt=NULL。()。m_Fangtie=NULL。m_Bianhao=”“。UpdateData(FALSE)。m_Bianhao=(position,0)。m_Yuefen=(position,1)。m_Jintie=atof((position,3))。3return。} if(b=500amp。b=2000amp。b=5000amp。b=20000amp。b=40000amp。b=60000amp。b=80000amp。b=100000){ return b=b*45/10015375。if(()){AfxMessageBox(”請輸入查詢的職工編號!“)。} OnInitADOConn()。(”select * from 工資表 where 職工編號=39?!?m_Chaxun)。m_pConnectionClose()。ClearALL()。(0)。該模塊實現(xiàn)功能是職工查詢工資的詳細信息,查詢個人詳細信息的功能。if(()){AfxMessageBox(”請輸入查詢的職工編號!“)。} OnInitADOConn()。(”select * from 工資表 where 職工編號=39?!?m_Chaxun)。m_pConnectionClose()。UpdateGrid()。6UpdateData(FALSE)。(”“)。Data Source=。“。} OnInitADOConn()。(”select * from 工資表 where 職工編號=39。 order by 職//創(chuàng)建記錄集指針對象實例(__uuidof(Recordset))。工編號 desc “,m_Chaxun)。(0,0,(char*)(_bstr_t)m_pRecordsetGetCollect(”職工編號(0,1,(char*)(_bstr_t)m_pRecordsetGetCollect(“月份”))。(0,3,(char*)(_bstr_t)m_pRecordsetGetCollect(“津貼”))。(0,5,(char*)(_bstr_t)m_pRecordsetGetCollect(“補貼”))。(0,7,(char*)(_bstr_t)m_pRecordsetGetCollect(“交通補貼”))。(0,9,(char*)(_bstr_t)m_pRecordsetGetCollect(“房租”))。(0,11,(char*)(_bstr_t)m_pRecordsetGetCollect(“會費”))。(0,13,(char*)(_bstr_t)m_pRecordsetGetCollect(“應(yīng)扣數(shù)”))。} void CGXGZ::ExitConnect(){if(m_pRecordset!=NULL)} m_pRecordsetClose()。//將記錄集指針移動到下一條記錄} //AfxMessageBox(“123”)。m_pRecordsetMoveNext()。軟件的設(shè)計者在測試整個過程中負責整體測試方案的制定和測試進度的掌握以及白盒測試的測試者。(2)機器測試:通過在計算機上直接運行被測程序,來發(fā)現(xiàn)程序中的錯誤。黑盒測試也稱功能測試,將軟件看作黑盒子,在完全不考慮程序的內(nèi)部結(jié)構(gòu)和特性的情況下,研究軟件的外部特性。白盒測試也稱結(jié)構(gòu)測試,將軟件看作一個透明的白盒子,按照程序的內(nèi)部結(jié)構(gòu)和處理邏輯來選定測試用例,對軟件的邏輯路徑及過程進行測試,檢查與測試是否相符。2)用戶登錄界面友好,可操作性及安全性能較好,能對不同管理級別者進行限制,以保證數(shù)據(jù)庫的安全。4)數(shù)據(jù)查詢便捷,能對各種不同的查詢條件搜索,以找到最合適的答案。對用戶的正常操作方式也提出警告。7)軟件對操作系統(tǒng)的兼容性良好,可移植性完好。一、關(guān)系模式設(shè)計根據(jù)題意,為實現(xiàn)所要求的所有功能,此處共設(shè)計5個關(guān)系,具體介紹和表的形式如下所示:①職工(職工編號,姓名,性別,年齡,部門,職稱)TnoTnameTsexTageDepartmentTitle②職位變更(職工編號,前職稱,現(xiàn)職稱,變更日期)TnoTitle1Title2Dates③考勤(職工編號,加班次數(shù),缺勤次數(shù),考勤日期)TnoOvertimeAbsenceDates④基本工資表(職稱,基本工資)TitleBase⑤工資表(職工編號,基本工資,加班工資,缺勤扣錢,實發(fā)工資)TnoBaseOverpayDockedWages二、全局ER圖參照1職稱基本工資基本工資表參照2基本工資得到職工編號工資表職稱年齡部門加班工資缺勤扣錢實發(fā)工資加班次數(shù)缺勤次數(shù)考勤日期職工編號接收考勤考勤變更日期現(xiàn)職稱前職稱職工編號職位變更職位變更記錄性別姓名職工編號職工三、物理設(shè)計建立數(shù)據(jù)庫,學(xué)校的工資管理系統(tǒng)CREATEDATABASESchoolSalary建立職工信息表CREATETABLETeacher(TnoCHAR(20)PRIMARYKEY,/*職工號*/TnameCHAR(20)UNIQUE,/*職工名*/TsexCHAR(10)NOTNULLCHECK(Tsexin('男','女')),/*性別*/TageINTNOTNULL,/*年齡*/DepartCHAR(20),/*所屬部門*/TitleCHAR(20))建立職稱變更記錄表CREATETABLEChange(TnoCHAR(20),/*職工號*/Title1CHAR(20),/*之前的職稱*/Title2CHAR(20),/*現(xiàn)職稱*/DatesINT,/*職位變更的月份*/FOREIGNKEY(Tno)REFERENCESTeacher(Tno))建立考勤表CREATETABLEAttendance(TnoCHAR(20),/*職工號*/OvertimeINT,/*加班次數(shù)*/AbsenceINT,/*缺勤次數(shù)*/DatesINT,/*月份*/FOREIGNKEY(Tno)REFERENCESTeacher(Tno)ONDELETECASCADEONUPDATECASCADE)建立基本工資表CREATETABLERefer(/*工資參照表*/TitleCHAR(20)PRIMARYKEY,/*職位*/SalaryFLOAT,/*對應(yīng)金額*/)建立工資表CREATETABLEPay(TnoCHAR(20),/*職工號*/BaseFLOAT,/*基本工資*/OverpayFLOAT,/*加班費*/DockedFLOAT,/*缺勤扣除工資*/WagesFLOAT,/*實際應(yīng)得工資*/FOREIGNKEY(Tno)REFERENCESTeacher(Tno))三、數(shù)據(jù)庫完整性設(shè)計各表名及其對應(yīng)主鍵職工(Teacher)職工編號(Tno)職稱變更記錄(Change)職工編號(Tno)考勤(Attendance)職工編號(Tno)基本工資表(Refer)職稱(Title)工資表(Pay)職工編號(Tno)參照完整性設(shè)計、職稱變更記錄(Change)的職工編號(Tno)設(shè)為外鍵FOREIGNKEY(Tno)REFERENCESTeacher(Tno)、考勤(Attendance)的職工編號(Tno)設(shè)為外鍵FOREIGNKEY(Tno)REFERENCESTeacher(Tno)ONDELETECASCADEONUPDATECASCADE實現(xiàn)在更新和刪除時級聯(lián)操作、工資表(Pay)的職工編號(Tno)設(shè)為外鍵FOREIGNKEY(Tno)REFERENCESTeacher(Tno)CHECK約束設(shè)計職工(Teacher)中對“性別”進行CHECK約束:CHECK(Tsexin('男','女'))要求性別必須為“男”或“女”觸發(fā)器設(shè)計、在職工表中建立職稱變更觸發(fā)器,當某職工的職稱發(fā)生變化時,在職稱變更記錄表中自動插入一個記錄,記錄變更前后的職稱名以及變更日期CREATETRIGGERTitle_changeONTeacherFORUPDATEASBEGINDECLARETnoCHAR(20)SELECTTno=FROMinsertedSELECT*FROMTeacherWHERETno=DECLARETitle1CHAR(20)SELECTTitle1=FROMdeletedDECLARETitle2CHAR(20)SELECTTitle2=FROMTeacherWHERETno=IFTitle1!=Title2BEGININSERTINTOChange(Tno,Title1,Title2)VALUES(Tno,Title1,Title2)ENDENDGO、在職工表中建立基本工資觸發(fā)器,當插入一個新的職工記錄時,根據(jù)其職稱并參照基本工資表,在工資表中自動更新其基本工資,且默認加班工資和缺勤扣錢均為0CREATETRIGGERBasic_payONTeacherFORinsertASBEGINDECLAR
點擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1