0

私は Java が苦手で、基本しか学んでおらず、まだなんだか新鮮です。テーブルから Java コンソールに行を出力する方法を知りたいです。

try {
    statement = con.prepareStatement(
                "SELECT * FROM users WHERE Username ='" + 
                LOGIN_UsernameField.getText() + "' AND Password ='" +
                LOGIN_PasswordField.getPassword() + "'");
    System.out.println ();
}

もちろん、それsystem.out.printlnが機能しないことはわかっています。そのすぐ上のSQLステートメントからの行を出力するには、それを置き換える何かが必要です。

4

2 に答える 2

2

Oracle のこのチュートリアルを試してください。シンプルでわかりやすいです。

こんなものでしょう

try{
        statement = con.prepareStatement(
                "SELECT * FROM users WHERE Username = ? AND Password =?");
        statement.setString(0,LOGIN_UsernameField.getText());
        statement.setString(0,LOGIN_PasswordField.getPassword());
        ResultSet rs = statement.execute();
        while(rs.next()){
           System.out.println("UserName:"+rs.getString("Username")+"\nPassword:"+rs.getString("Password"));
       } 
}catch(){
 //handle exceptions
}finally{
 //close statements, statement and resultset here..
}
于 2013-07-19T06:14:33.810 に答える
2

ここにコードがあります

    System.out.println("-------- MySQL JDBC Connection Testing ------------");


    Connection connection = null;

    try {
        connection = DriverManager
                .getConnection("jdbc:mysql://localhost:3306/testDb", "userName", "Password");
    } catch (SQLException e) {
        for(Throwable ex : e) {
            System.err.println("Error occurred " + ex);
        }
        e.printStackTrace();
    }

    if (connection != null) {
        System.out.println("Connected to database!");
    } else {
        System.out.println("Failed to make connection!");
    }

    try {
        Statement stmt = connection.createStatement();
        String query = "select * from person ;";
    //person is the table name
        ResultSet rs = stmt.executeQuery(query);
        while (rs.next()) {
            String name = rs.getObject(1).toString();
            String gender = rs.getObject(2).toString();
            System.out.println("Name of the person is " + name + " and his gender is " + gender);
    //Person table has name and gender column

        }
    } catch (SQLException e) {
        e.printStackTrace();
        for(Throwable ex : e) {
            System.err.println("Error occurred " + ex);
        }
        System.out.println("Error in fetching data");
    }

注:私はそれを使用JDBC 4しているJava 7ため、明示的にドライバーを提供する必要はありません。コンパイラはクラスパスから自動的に取得します。MySqlConnector.jar をダウンロードしてクラスパスに配置できます。Java 7 を使用していない場合は、.jar を使用してドライバーを明示的にロードする必要がありますClass.forName()。もちろん、私はMySqlを使用しています...ドライバーは、使用するデータベースによって異なります。

お役に立てれば。

于 2013-07-19T06:29:18.580 に答える