Comment faire pour exécuter une instruction SQL avec une variable comme OÙ?

J'ai quelques code Java comme

int userid = take user input;

Puis d'exécuter une requête sql,

        Class.forName(dbdriver);
        conn = DriverManager.getConnection(url, username, password);
        st = conn.createStatement();

        st.executeUpdate("select * from person where uid = userid" );

Maintenant, je ne sais pas le résultat retourné est null. Je pense que where uid = userid est de donner un mauvais résultat car il est à la recherche pour littérale valeur uid "userid". En fait, je veux retrive de l'information de la personne table des utilisateurs, à condition uid valeurs. Quelqu'un peut-il m'aider comment résoudre ce problème?

  • Pouvez-vous montrer le réel de code java où vous faites la requête? Exactement comment vous transmettre la valeur de userid dans la requête dépend beaucoup de comment vous vous JDBC appel.
  • Montre-nous ton code et stacktrace.?
  • Pouvez-vous inclure le code réel, vous êtes en cours d'exécution, et de décrire plus en détail de ce comportement que vous observez?
  • C'est assez basique. Avez-vous déjà commencé à apprendre vraiment le sujet en utilisant les tutoriels officiels? Commencez ici: download.oracle.com/javase/tutorial/jdbc/basics/index.html en Particulier le chapitre "Préparées" devrait être utile.
  • - Je ajouter le code.
  • Srry, je fais l'erreur de saint.executeUpdate("select * from personne où uid =" + id utilisateur).

InformationsquelleAutor alessandro | 2012-02-03