📄 updatedb.java
字号:
package Dbprocess;
import java.sql.*;
import java.util.*;
import Staff.*;
import PizzaProduct.Pizza;
import Storage.*;
/**
* This system will use db mysql.
* The mostly of the option is update option.
*
*
*/
public class UpdateDB {
Connection con;
/**
*
* @param table
* @param name
* @param quantity
* @param addition
* This constructor will to do a update statement.
* Like (if the addition is true)
* update atable set quantity = quantity + quan where name = aname
* (if the addition is false)
* update atable set quantity = quantity - quan where name = aname
*/
public UpdateDB(String atable,String aname,int quan,boolean addition,Connection con){
this.con=con;
try{
if(addition){
String sql = "Update ? set quantity=quantity+? where name = ?";
PreparedStatement pstate = con.prepareStatement(sql);
pstate.setString(1,atable);
pstate.setInt(2,quan);
pstate.setString(3,aname);
pstate.executeUpdate();
}
else{
String sql = "Update ? set quantity=quantity-? where name = ?";
PreparedStatement pstate = con.prepareStatement(sql);
pstate.setString(1,atable);
pstate.setInt(2,quan);
pstate.setString(3,aname);
pstate.executeUpdate();
}
}
catch (Exception e) {
e.printStackTrace();
}
}
/**
* when some pizzas have saled, we need to update the storage.
* It's update the storage quantity according to the pizzas.
* @param pizzas
* @param con
*/
public UpdateDB(Pizza[] pizzas,Connection con){
this.con=con;
try{
int i;
for(i=0;i<pizzas.length;i++){
String sql = "Update storage set quantity=quantity-1 where name like ? AND type like ? AND size like ?";
PreparedStatement pstate = con.prepareStatement(sql);
pstate.setString(1,pizzas[i].getName());
pstate.setString(2,pizzas[i].getType());
pstate.setString(3,pizzas[i].getSize());
pstate.executeUpdate();
}
}catch (Exception e) {
e.printStackTrace();
}
}
public UpdateDB(List staffs,Connection con){
this.con=con;
try{
int i;
String sql = "Update staff set wage=? where staffid like ?";
PreparedStatement pstate = con.prepareStatement(sql);
for(i=0;i<staffs.size();i++){
pstate.setInt(1,((Staff)staffs.get(i)).getWage());
pstate.setString(2,((Staff)staffs.get(i)).getStaffid());
pstate.executeUpdate();
}
pstate.close();
}catch (Exception e) {
e.printStackTrace();
}
}
public UpdateDB(StorageItem storage,Connection con){
this.con = con;
try{
String sql = "Update storage set quantity =quantity+? WHERE name like ? AND type like ? AND size like ?";
PreparedStatement pstate = con.prepareStatement(sql);
pstate.setInt(1, storage.getQuantity());
pstate.setString(2, storage.getName());
pstate.setString(3, storage.getType());
pstate.setString(4, storage.getSize());
pstate.executeUpdate();
pstate.close();
}catch (Exception e) {
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -