IT项目之旅(一)《宿舍管理系统》设计与实现
《宿舍管理系統》
數據庫工具:SQL SERVER 2005?
編程環境:Microsoft Visual Studio 2005
編程語言:C#? ?
作者:05計算機A班??呆呆 0515111039
一、? 系統需求分析
(1)??? 問題背景:
目前學校的每個樓棟的學生信息、財產、外出違規情況都是隨便寫在幾個本子上,沒有比較系統的存儲,很容易丟失不便以統一管理,所以就做了這個系統。
(2)??? 總體目標:
?? 建立一個比較完善的樓棟管理系統以及數據庫,使管理員更加有效地組織管理各樓棟的學生信息。
(3)??? 主要功能:
?? 該系統是面向樓棟管理員的。主要涉及到三個功能學生的基本信息管理、樓棟房間管理以及違規情況的管理。
學生信息管理:入校時,每位同學都有唯一的學號,并被分配到指定的宿舍樓和指定的宿舍,也會有一個宿舍號,其入校時間就是他的入住時間。另外,為了管理上的方便,同一院系的學生的宿舍一般在一起,相應地會有其所在的院系名稱。
樓棟房間管理:主要涉及每個房間的號碼、電話、可容納的人數、還有水表度數、電表度數。
違規情況的管理:錄入違反學校規定的每個同學的信息,違反的原因及處罰的結果。
(4)??? 實現:
系統結構采用當前流行的C/S結構,也就是客戶端/服務器模式。本設計是以樓棟管理系統為例。編程語言采用C#,它可視化的開發環境,可以快速完成系統的開發,內部集成的數據庫訪問通道,可以輕松方便的對數據庫管理。
?
?
?
二、系統功能的設計和實現
主要通過存儲過程來實現。
儲存過程的設計:
a.顯示的存儲過程:Show_allstudent(已正確執行):
ALTER PROCEDURE [dbo].[show_allstudents]
AS
BEGIN
??? select * from Student
END
類似的還有:show_allroom
b.增加的存儲過程:insert_student:
ALTER PROCEDURE [dbo].[insert_student]
@Number nvarchar(50),
@Name nvarchar(50),
@Sex nvarchar(50),
@Department nvarchar(50),
@RoomNo nvarchar(50),
@InDay nvarchar(50)
AS
BEGIN
??? insert into Student values(@Number,@Name,@Sex,@Department,@RoomNo,@InDay )
END
限于篇幅其他省略……
?
?
?
約束的設置:
鍵約束:student表中,Number是主鍵,當插入相同的學生號時,會出錯。Room表中,插入相同房號會報錯。
單值約束:([Number] like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')? 當插入學生號時,如果不是10個數字會出錯。
引用完整性約束(外鍵約束):當在違規表中錄入的學生號不存在student中的時候,錄入表不能顯示彈出錯誤提示。
當錄入學生信息表的時候,加入的房間號不存在Room表中就會出錯。
?
?
代碼實現:主要通過ADO.Net,調用存儲過程來實現。
(三)實現的頁面功能
?
?
?
總結:這個小項目應該是我第一次用C#開發的項目,花了幾天時間,主要是數據庫的實踐作業。基本數據庫所設計到的功能(鍵約束、單值約束、引用完整性,各種儲存過程)。主要涉及到的就是Ado.Net? 以及SQL Server 2005的一些基本常用方法,存儲過程視圖的應用。幾年前開發的,現在回想起來當時開發的系統有點幼稚,如現在計算加減乘除的。這是上交時的版本,后期又完善了一下,可以用,比這好看,功能強大(未貼出)。
?
主要涉及技術:ADO.Net?、 SQL Server2005、界面換膚、需求分析與設計
轉載于:https://www.cnblogs.com/wakerobin/archive/2009/10/26/1590220.html
總結
以上是生活随笔為你收集整理的IT项目之旅(一)《宿舍管理系统》设计与实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MSN空间上的以往技术贴整理
- 下一篇: 在Oracle中实现自增加ID的功能