public class Purchase {
private Connection conn;
public Purchase(String a,String user){
try{
boolean j = Judge(a);
if(j == false){
JOptionPane.showMessageDialog(null, "购票失败!不存在此车次号!");
}
else{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn = DriverManager.getConnection("jdbc:sqlserver://127.0.0.1:1433;DatabaseName=火车售票系统","sa","123456");
String sql = "INSERT INTO "+user+"订购信息 SELECT 车次号,始发地,目的地,出发时间 FROM 车次信息 WHERE 车次号='"+a+"' GROUP BY 车次号,始发地,目的地,出发时间";
String sql2 = "UPDATE 车次信息 SET 剩余票数=剩余票数-1 WHERE 车次号='"+a+"'"; //更新车次信息
java.sql.Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
stmt.executeUpdate(sql2);
conn.close();
JOptionPane.showMessageDialog(null, "购票成功!");
}
}catch (ClassNotFoundException e) {
JOptionPane.showMessageDialog(null, "购票失败!连接数据库失败!");
e.printStackTrace();
}catch (SQLException e) {
JOptionPane.showMessageDialog(null, "购票失败!您已购买此车次!");
e.printStackTrace();
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "购票失败!连接数据库失败!");
e.printStackTrace();
}
}
如果a小于或等于0,if判断一下,提示票数不够