簡體   English   中英

編譯Java代碼時出錯

[英]Error in compilation of java code

shilps.java:198: cannot find symbol
symbol  : method setDate(int,java.lang.String)
location: interface java.sql.PreparedStatement
                        ps.setDate(2, "2010-05-31");
                          ^
shilps.java:231: cannot find symbol
symbol  : method setDate(int,java.lang.String)
location: interface java.sql.PreparedStatement
            ps.setDate(1, "2010-05-31");
              ^
shilps.java:232: setInt(int,int) in java.sql.PreparedStatement cannot be applied to
 (int,java.lang.String)
                        ps.setInt(2, "88349");
                          ^
shilps.java:293: e is already defined in main(java.lang.String[])
           }catch(Exception e){
                            ^
6 errors

為什么會發生錯誤? 我包括:

 import java.util.*;
    import java.io.*;
    import java.sql.*;
  1. setDate PreparedStatement的2參數方法采用日歷,而不是字符串
  2. setDate PreparedStatement的2參數方法采用日歷,而不是字符串,
  3. setInt的2參數方法采用兩個int ,而不是int和一個String。
  4. 您的main方法中已經有另一個名為e字段。

編譯器會告訴您所有您需要了解的內容:

setInt(int,int) in java.sql.PreparedStatement cannot be applied to (int,java.lang.String)

這意味着,您正在將String類型的Value傳遞給需要int的方法。 PreparedStatement的API文檔將向您顯示,有一個方法setString(int,String) ,它將String作為第二個參數。

http://download.oracle.com/javase/1.4.2/docs/api/java/sql/PreparedStatement.html

也許您想調用ps.setInt(2, 88349);

在該范圍內已經定義了一個名為e的變量。

try{
    // some Code
    try{
        // some more coe
    } catch (Exception e){}
                      ^^^
              Compiling Error
} catch (Exception e){}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM