看板 java 關於我們 聯絡資訊
小的想要用JAVA把我SQL某一個值取出來 ResultSet rs = stmt1.executeQuery("SELECT 進貨 FROM products WHERE 編號 ="+a); 我想要的值是我輸入產品的編號 他會告訴我一共進貨多少 a是我輸入的編號 接著我用int b = Integer.parseInt(rs.getString("進貨")); 想把我定位到的進貨的值取出來 但編譯的時候他說我的進貨資料行有誤 想請問是我再定位的時候就錯了 還是取值的方法有誤 小弟附上那一段的程式碼 public void add(){ try { Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); Scanner input1 = new Scanner(System.in); System.out.print("請輸入編號:"); String a = input1.nextLine(); ResultSet rs = stmt.executeQuery("SELECT 進貨 FROM products WHERE 編號 ="+a); int b = Integer.parseInt(rs.getString("編號")); System.out.print("請輸入進貨數量:"); b += input1.nextInt(); String sql1 = "UPDATE products SET 進貨 = "+ b +"WHERE 編號 = "+"'"+ a +"'"; stmt.executeUpdate(sql1); stmt.close(); rs.close(); } catch (Exception ex) { ex.printStackTrace(); } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.244.170.5
slalala:錯誤訊息咧 02/27 01:10
pim79979:錯誤訊息是 資料行名稱 編碼 無效 02/27 01:22
kogrs:column name該不會是用中文吧??沒用過中文當col name 02/27 01:28
kogrs:不過用了中文就得考慮編碼問題了 02/27 01:29
pim79979:原本也以為不行 但我在其他部分的程式碼用中文都ok 02/27 01:32
slalala:編號你用Integer還是VARCHAR?= =? 題外 rs.getInt 02/27 02:24
yanli2:' ' 02/27 12:09
fanzero:用英文比較不麻煩 02/27 19:55
inthehope:可能是少了 ' a ' 02/27 22:02
inthehope:"SELECT 進貨 FROM products WHERE 編號 ="+"'"+a+"'" 02/27 22:04
inthehope:不然就用preparedstatement 02/27 22:05
belion:資料庫先全改成英文吧?編碼問題@@ 02/27 23:33
pim79979:但錯誤訊息指的是rs.getString那段 所以在想事不是我學 02/28 11:38
pim79979:藝不精 方法有誤 想請問大家資料庫都英文的話 進出貨品名 02/28 11:40
pim79979:都用英文 對不懂英文的店家是不是很不便 02/28 11:43
pim79979:各位大大提供的方法我都有試過了 錯誤訊息都還是一樣 02/28 12:09
※ 編輯: pim79979 來自: 60.244.170.5 (02/28 12:21) ※ 編輯: pim79979 來自: 60.244.170.5 (02/28 12:23) ※ 編輯: pim79979 來自: 60.244.170.5 (02/28 13:40)
luoqr:不懂英文的店家?店家需要直接接觸到資料庫? 02/28 14:27
pim79979:我們資料庫內都用英文名稱的話 他看到的資料也是英文 02/28 15:43
pim79979:感謝各位的幫忙 有大大寄站內信幫我解決問題了 02/28 16:37
slalala:我笑了 02/28 23:11