Обновление JDBC SQLite - PullRequest
       1

Обновление JDBC SQLite

3 голосов
/ 27 мая 2011

Я новичок в jdbc sqlite.Я хотел бы знать, как выполнить обновление.Например, у меня есть таблица с именем людей и профессии внутри.Должен ли я использовать PreparedStatement?

PreparedStatement change = conn.prepareStatement("Update people set name = ? ");
change.setString(1, "John");

ResultSet rs = stat.executeQuery("select * from people where name = 'Gandhi';");
while (rs.next()) {
    System.out.println("name = " + rs.getString("name"));
    System.out.println("job = " + rs.getString("occupation"));
}
rs.close();
conn.close();

Я хотел бы спросить правильный путь.Спасибо тебе ..

Ответы [ 2 ]

2 голосов
/ 11 июня 2011

Вы не «выполняете» обновление.Вам необходимо вызвать change.executeUpdate() для отправки инструкции UPDATE в движок.

(И, как указал ZeroPage: удалите ; в строке SQL)

1 голос
/ 11 июня 2011

Возможно, вы захотите проверить Java и SQLite

Пример из поста:

package com.rungeek.sqlite;

import java.sql.Connection;
import java.sql.DriverManager; 
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;

public class Test {
 public static void main(String[] args) throws Exception {
    Class.forName("org.sqlite.JDBC");
    Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db");
    Statement stat = conn.createStatement();
    stat.executeUpdate("drop table if exists people;");
    stat.executeUpdate("create table people (name, occupation);");
    PreparedStatement prep = conn.prepareStatement(
        "insert into people values (?, ?);");

    prep.setString(1, "Gandhi");
    prep.setString(2, "politics");
    prep.addBatch();
    prep.setString(1, "Turing");
    prep.setString(2, "computers");
    prep.addBatch();
    prep.setString(1, "Wittgenstein");
    prep.setString(2, "smartypants");
    prep.addBatch();

    conn.setAutoCommit(false);
    prep.executeBatch();
    conn.setAutoCommit(true);

    ResultSet rs = stat.executeQuery("select * from people;");
    while (rs.next()) {
        System.out.println("name = " + rs.getString("name"));
        System.out.println("job = " + rs.getString("occupation"));
    }
    rs.close();
    conn.close();
}
}

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...