rs=stmt.executeQuery(\String query1=\INTO member VALUES('\)\
//用于写入数据
stmt.executeUpdate(query1); stmt.close(); con.close(); login_user_add_suc.setVisible(true); } catch(SQLException e2) { System.out.println(\ }
用户删除与添加类似只是sql语句有所变化:
rs=stmt.executeQuery(\String query2=\FROM member WHERE username='\
password='\删除数据 stmt.executeUpdate(query2);
如图,为添加用户与删除用户成功的显示结果
6
同样用户更新只是sql语句的区别而已。 rs=stmt.executeQuery(\
String query2=\member SET username='\WHERE username='\更新数据 stmt.executeUpdate(query2);
String query1=\WHERE password='\stmt.executeUpdate(query1);
3)数据库管理
数据库管理与用户管理相类似。都是具有数据库添加、删除、更新的功能,其sql语句类似,只是要在具体的实现流程上有所区别
添加数据:在这里与用户管理里的程序类似,不再重复代码,只是验证一下结果
可以看到,结果还是很有效地、很正确,并且在后面的文本域中显示了操作历史。
7
删除数据库:同样在这里不重复代码,只是验证一下结果。
可以看到符合条件的项目均已删除。
更新数据:同样验证结果:
这里在不同的选择条件下用到不同的语句 会有较多的选择判断:
操作前 操作后
if(login_change_edit_intsolution==0)//条件项 { switch(login_change_edit_intupdate)//更新项 {
case 1: query3=\TE eqmember SET name='\WHERE num='\; case 2: query3=\num='\; case 3: query3=\num='\; case 4: query3=\eqmember SET bugname='\WHERE num='\;
case 5: query3=\TE eqmember SET bugtime='\WHERE num='\;
default:query3=\TE eqmember SET num='\WHERE
8
num='\; break; } } ……
4)数据库查询
数据库查询语句主要是sql中的SELECT语句,由于本软件支持条件可选查询,所以需要对于choice控件的选择值进行判断。
同时本程序对于选择编号以及名称进行的查询提供统计故障次数的功能,实现方式就是遍历数据库,判断符合条件的字段后,叠加计数,流程图代码如下:
开始累加计数清零读取数据故障字段为空?YN累积计数加一N数据读取完毕?Y结束 try { login_search_text.setText(\ //用于计算故障累计次数 Connection con=DriverManager.getConnection(connectDB); Statement stmt=con.createStatement(); switch(login_serach_index) {
case 1:rs=stmt.executeQuery(\num,name,voltage,current,bugname,bugtime FROM eqmember WHERE name='\
case 2:rs=stmt.executeQuery(\num,name,voltage,current,bugname,bugtime FROM eqmember WHERE voltage='\
case 3:rs=stmt.executeQuery(\num,name,voltage,current,bugname,bugtime FROM eqmember WHERE current='\
9
case 4:rs=stmt.executeQuery(\num,name,voltage,current,bugname,bugtime FROM eqmember WHERE bugname='\
case 5:rs=stmt.executeQuery(\num,name,voltage,current,bugname,bugtime FROM eqmember WHERE butime='\
default:rs=stmt.executeQuery(\num,name,voltage,current,bugname,bugtime FROM eqmember WHERE num='\ } login_search_text.append(\查询结果:\\n\ login_search_text.append(\设备编号\设备名称\电压\电流\故障名称\故障时间\\n\ while(rs.next())//用于读取数据 { String num_search=rs.getString(\获得数据库第一列 String name_search=rs.getString(\ String current_search=rs.getString(\ String voltage_search=rs.getString(\ String bugname_search=rs.getString(\ String bugtime_search=rs.getString(\
login_search_text.append(num_search+\h+\ if((login_serach_index==1)||(login_serach_index==0)) { boolean com1=bugname_search.equals(\ boolean com2=bugname_search.equals(\ boolean com3=bugname_search.equals(\无\ if((!com1)&&(!com2)&&(!com3)) { bugaccu=bugaccu+1;//获得计数次数 }
如下为测试结果,可以看到该过程判断出累计的故障次数:
10