実際、私はJavaとSQLの初心者なので、前もって申し訳ありませんが、ばかげた質問になるかもしれません。私はいくつかのフォーラムやsmthで書くことに慣れていません. 私はすぐに答えを探しているのが好きです。とにかく今、私は無力です。何を探すべきかわからなかったので、どこにも見つけられなかったので、この方法がより良いと思いました。
ですから、理解を深めるために分割する問題はほとんどありません。
if (stmt.execute(
"SELECT * FROM products where ID=" + removeName)) {
rs = stmt.getResultSet();
if (!rs.next()) {
m = "ID not found.";
return m;
}
1.(SOLVED THANK YOU MARC B) このコードで、フィールドにテキスト (数値ではない) を入力すると、この例外がスローされます: SQLException: Unknown column 'blabla' in 'where clause' before my database is ID文字列として設定され、どこでも文字列です。
2.(しばらく頭がオンになって解決しました)私は学校にプロジェクトを行っていますが、それは倉庫システムであり、注文を行っているレジ係がいます。彼は商品を注文リストに追加し、注文リストが終了すると (レジ担当者はそこに追加しません - 注文をクリックします)、その商品を倉庫データベースから削除する必要があります。オーダー リスト (to後でデータベースから削除するために、いくつかの変数またはどこか)?配列に保存するのは良いことですが、ボタンをクリックするたびに配列のインデックスを増やす必要がありますが、i(おそらくそのactionListeners)またはより良い方法を増やす方法がわかりません。すべてに感謝します。
while (rs.next()) {
String entry = rs.getString(1);
String entry1 = rs.getString(2);
int entry2 = rs.getInt(3);
//check if there are enough products in warehouse
if(quantity>entry2){
m+="There are not enough product(s) with ID: "+entry1+"\nin the warehouse.\n";
return m;
}
//add to the order list
m += "Product name: " + entry + "\n"
+ "ID: " + entry1 + "\n"
+ "Quantity: " + quantity + "\n" + "\n";
}
entry1 と entry2 が初期化された後、while ループに追加してコードを編集します。
a.add(new Product(entry1, entry2));
ArrayListとして宣言されている間:
ArrayList<Product> a=new ArrayList<>();
クラス製品は次のようになります。
public class Product {
public String name, ID;
public int quantity;
public Product(String ID, int quantity){
this.ID=ID;
this.quantity=quantity;}
public Product(String name, String ID, int quantity){
this.name=name;
this.ID=ID;
this.quantity=quantity;}
public String getID(){
return ID;}
public int getQuantity(){
return quantity;}
}
編集が役立つことを願っています。多分それは大きすぎる質問であり、何らかの形で分割する必要があるかもしれませんが、私が言ったように、フォーラムを使用して探すだけではないので、すべての回答に感謝します(私の投稿に対する批評家にも). 再度申し訳ありませんが、ありがとうございました!