2010-11-09 6 views
0
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 

Pourquoi l'erreur se produit-elle? J'ai inclus:Erreur lors de la compilation du code Java

import java.util.*; 
    import java.io.*; 
    import java.sql.*; 
+1

C'est difficile à dire sans le code. :) – Mike

+0

'ps' c'est quoi? –

+0

où est la réponse de baluc ?? –

Répondre

1
  1. la méthode 2 param dans PreparedStatement pour setDate prend un calendrier, pas une chaîne
  2. la méthode 2 param dans PreparedStatement pour setDate prend un calendrier, pas une chaîne,
  3. la méthode 2 param pour setInt prend deux int s, pas et int et une chaîne.
  4. vous avez déjà un autre champ dans votre main méthode appelée e.
0

Le compilateur vous dit tout ce que vous needd savoir:

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

Cela signifie, vous passez une valeur de type String à une sorcière méthodes a besoin d'une int. L'API-Doc de PreparedStatement vous montrera qu'il existe une méthode setString(int,String) qui prendra une chaîne comme second paramètre.

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

Peut-être que vous vouliez appeler ps.setInt(2, 88349);

Il ist un valiable appelé e déjà défini dans ce champ d'application.

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