java.sql.SQLException: ORA-00933: commande SQL n'est pas correctement terminé

Ce que je veux accomplir, c'est d'être capable d'écrire des requêtes SQL et de vérifier les résultats.
Les Instructions SQL aurait variables, comme :

String sql = "Select  zoneid from zone where zonename = myZoneName";

Où myZoneName est généré à partir de compter +

Remarque: j'utilise Apache POI pour analyser feuille de calcul Excel.

voici le code:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;

import org.apache.log4j.Logger;
import org.junit.Test;

public class VerifyDBSingleDomain {

    static Logger log = Logger.getLogger(VerifyDBSingleDomain.class.getName());

    String url = "jdbc:oracle:thin:@a.b.c.d:1521:mname";

    @Test
    public void VerifyDBSingleDomainTest() throws SQLException {

        Properties props = new Properties();
        props.setProperty("user", "user");
        props.setProperty("password", "password");

        String sql = "Select  zoneid from zone where zonename = 99224356787.tv";
        //String sql = "Select * from zone";

        Connection conn;
        //try {
            conn = DriverManager.getConnection(url, props);
            PreparedStatement preStatement = conn.prepareStatement(sql);
            ResultSet result = preStatement.executeQuery();
            System.out.println(result);

            /*while (result.next()) {
                System.out.println(result.toString());
            }
        } catch (SQLException e) {

            e.printStackTrace();
        }*/

    // }
    //}

    }
}

et je reçois l'erreur:

java.sql.SQLException: ORA-00933: SQL command not properly ended
  • Pas sûr, mais on dirait que vous avez citer votre comparaison String sql = "Select zoneid from zone where zonename = '99224356787.tv'";
  • vous ne savez pas comment vous voyez " pour la zone nom, je l'ai enlevé car il était une faute de frappe dans la question, peut-être.
  • Je voulais dire 99224356787.tv n'est pas entourée par des guillemets simples dans votre code SQL des comparaisons sur les varchars sont généralement de la forme WHERE field = 'myValue'
  • l'a, qui fonctionne, Merci
InformationsquelleAutor kamal | 2012-09-24