4.3.3 后台功能模块分析 后台模块主要是管理功能,可以分为三个小模块:添加模块、删除模块、修改模块。 内容来自www.paper51.com
(1)添加模块 paper51.com
此模块允许管理员向数据库中任意表添加数据,(如:向表stop中添加站点,stop_id自动添加;向表line中添加线路信息,如线路名、起点终点站、收发车时间等;向表distance中添加站点和距离)等。并对一些违法操作进行处理和提示。比如:如果管理员输入不完全,那么系统会提示“不能为空,要添加请输入值!”并且不向数据库提交操作;如果管理员输入的值在数据据中已经存在,为了避免违反数据唯一性的约束,那么系统会提示“此条记录已在数据库中存在!”并且不向数据库提交操作 ;对于一些有关联的表,如,表stop中的站点id和表line中的线路id在表linestops中是作为外键存在的,例如,管理员要向表linestops中添加站点id和线路id,如果输入的站点id或线路id分别在stop表和line表中不存在,那么系统会根椐相应的输入情况提示“此站点在数据库中不存在,请先添加站点!”或者“此线路在数据库中不存在,请先添加线路!”,这样管理员就会先去添加站点或线路,然后再来添加linestops中的数据;如果一切正常,那么系统会执行操作,并提示“添加成功!”,让管理员知道数据已添加进数据库。 内容来自www.paper51.com
添加stop表中的数据 http://www.paper51.com 过滤不合法操作,并给出错误提示: paper51.com
内容来自论文无忧网 www.paper51.com if(tTextBox1.Text=="") //判断输入是否为空,若为空则给出错误提示 内容来自www.paper51.com { 内容来自www.paper51.com tLabel2.Text="不能为空!要添加请输入值!"; paper51.com } paper51.com 输入合法则执行添加操作,不合法则不执行操作,并给出错误提示: 内容来自www.paper51.com
paper51.com
string CommStr1="select stop_name from stop where stop_name='"+sname+"'";//查询站点名 http://www.paper51.com string CommStr2="insert into stop(stop_name) values('"+sname+"')";//将站点添加进数据库的表中 http://www.paper51.com if(i==1) //如果存在此站点则给出错误提示 内容来自www.paper51.com tLabel2.Text="数据库中已存在此站点!"; paper51.com else //不存在则将该站点添加进数据库的表中,并提示添加成功 内容来自论文无忧网 www.paper51.com
myComm=new SqlCommand(CommStr2,myConn); http://www.paper51.com myComm.ExecuteNonQuery(); 内容来自www.paper51.com tLabel2.Text="添加成功!"; paper51.com
添加line表中的数据: paper51.com 过滤不合法操作,并给出错误提示。如果输入合法则执行添加操作: http://www.paper51.com 内容来自www.paper51.com if(tTextBox2.Text=="" || tTextBox3.Text=="" )//判断输入是否为空,如果为空则给出相应的错误提示 paper51.com { http://www.paper51.com
tLabel3.Text="不能为空!要添加请输入值!"; 内容来自论文无忧网 www.paper51.com } paper51.com string CommStr1="select line_name from line where line_name='"+lname+"'";//查询是否存在此线路 copyright paper51.com
string CommStr2="insert into line(line_name,start_end,setime,price) values('"+lname+"','"+ses+"','"+setime+"',default)";//将线路信息添加进数据库的表中 paper51.com paper51.com 添加linestops表中的数据 paper51.com 过滤不合法操作,并给出错误提示: copyright paper51.com
内容来自论文无忧网 www.paper51.com
if(sname=="" || lname==""|| tTextBox6.Text=="")//判断输入是否为空,如果为空则给出错误提示 http://www.paper51.com
tLabel6.Text="不能为空!要添加请输入值!"; http://www.paper51.com
string CommStr5="select * from linestops where line_id=(select line_id from line where line_name='"+lname+"') and stop_id=(select stop_id from stop where stop_name='"+sname+"') and seq="+seq1+"";//查询站点和线路在表linestops中对应的站点id,线路id,和站点在线路中的顺序 copyright paper51.com DataSet ds = new DataSet();//在DataSet中定义两个表line和stop分别用于存放线路id和站点id 内容来自论文无忧网 www.paper51.com
DataTable dt=ds.Tables.Add("line"); copyright paper51.com
dt=ds.Tables.Add("stop"); 内容来自www.paper51.com if(i==1)//同样判断linestops中是否已存在此条记录,存在则给出错误提示 内容来自论文无忧网 www.paper51.com tLabel4.Text="此条记录已在数据库中存在!"; copyright paper51.com else //不存在此条记录,则进行添加操作,并提示添加成功 内容来自www.paper51.com
{ http://www.paper51.com
string CommStr6="insert into linestops(line_id,stop_id,seq) Values ("+l+","+s+","+seq1+")";//添加记录的命令字符串 copyright paper51.com myComm=new SqlCommand(CommStr6,myConn); 内容来自论文无忧网 www.paper51.com myComm.ExecuteNonQuery(); copyright paper51.com
tLabel6.Text="添加成功!"; paper51.com } http://www.paper51.com
copyright paper51.com 添加distance表中的数据: copyright paper51.com
http://www.paper51.com if((tTextBox8.Text=="")||(tTextBox9.Text=="")||(tTextBox10.Text==""))//判断输入是否为空,如果为空则给出错误提示 内容来自论文无忧网 www.paper51.com
tLabel7.Text="不能为空!要添加请输入值!"; copyright paper51.com 接上面代码 内容来自论文无忧网 www.paper51.com
paper51.com
else //不为空则执行以下代码 copyright paper51.com { http://www.paper51.com string CommStr1="select stop_id from stop where stop_name='"+startStop+"'";//查询站点startStop的id http://www.paper51.com
string CommStr2="select stop_id from stop where stop_name='"+endStop+"'";//查询站点endStop的id copyright paper51.com string CommStr3="select startStop,endStop from distance where startStop='"+startStop+"' and endStop='"+endStop+"'";//查询站点startStop到endStop的距离 copyright paper51.com string CommStr4="insert into distance(startStop,endStop,distance) values('"+startStop+"','"+endStop+"','"+distance+"')";//向表distance添加记录 内容来自论文无忧网 www.paper51.com if(i==0) //如果查询结果无此站点,则给出错误提示 http://www.paper51.com
tLabel7.Text="起点站在stop表中不存在,请先在stop表中添加此站点!"; 内容来自论文无忧网 www.paper51.com
else paper51.com { copyright paper51.com
if(n==0) //如果查询结果无此站点,则给出错误提示 paper51.com tLabel7.Text="终点站在stop表中不存在,请先在stop表中添加此站点!"; 内容来自论文无忧网 www.paper51.com else //如果这两个站点在数据库中都存在,则进行进一步的判断 paper51.com { 内容来自www.paper51.com
if(m==1) //如果distance表中已经存在此条记录,则给出错误提示 http://www.paper51.com tLabel7.Text="表distance中已经存在此条记录,不能重复!"; 内容来自www.paper51.com else //如果所有限制条件都过滤过后符合条件则将记录添加进数据库,并提示添加成功 内容来自www.paper51.com myComm=new SqlCommand(CommStr4,myConn); 内容来自论文无忧网 www.paper51.com myComm.ExecuteNonQuery(); 内容来自www.paper51.com tLabel7.Text="添加成功!"; 内容来自www.paper51.com |