0

PostgreSQLuserでは、内部テーブルで使用される予約済みのキーワードですが、使用するuser必要がある別のテーブルが独自のデータベースにもあります。テーブルで INSERT または UPDATE ステートメントを実行しようとすると、常に次のエラーが生成されます: The column name 'id' was not found in this ResultSet.

これは私が現在使用しているJavaコードです:

PreparedStatement stat1 = conn.prepareStatement("SELECT id FROM user;");
PreparedStatement stat2 = conn.prepareStatement("UPDATE user SET date_created = ? , last_updated = ? , uuid = ? WHERE id = ?;");
ResultSet rs = stat1.executeQuery();
while(rs.next()){
    UUID uuid = UUID.randomUUID();
    String tempId = uuid.toString();

    stat2.setTimestamp(1, curDate);
    stat2.setTimestamp(2, curDate);
    stat2.setString(3, tempId);
    stat2.setLong(4,rs.getLong("id"));

    stat2.executeUpdate();
}

私の質問は、userキーワードの制限に干渉することなく、個人テーブルの値を挿入または更新するにはどうすればよいですか?

4

2 に答える 2

1

このようにテーブル名をエスケープします

select * from "user";
于 2013-05-29T07:59:01.360 に答える