Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Cara terbersih untuk membangun string SQL di Java

Pertama-tama pertimbangkan untuk menggunakan parameter kueri dalam pernyataan yang disiapkan:

PreparedStatement stm = c.prepareStatement("UPDATE user_table SET name=? WHERE id=?");
stm.setString(1, "the name");
stm.setInt(2, 345);
stm.executeUpdate();

Hal lain yang dapat dilakukan adalah menyimpan semua kueri di file properti. Misalnya dalam file query.properties dapat menempatkan kueri di atas:

update_query=UPDATE user_table SET name=? WHERE id=?

Kemudian dengan bantuan kelas utilitas sederhana:

public class Queries {

    private static final String propFileName = "queries.properties";
    private static Properties props;

    public static Properties getQueries() throws SQLException {
        InputStream is = 
            Queries.class.getResourceAsStream("/" + propFileName);
        if (is == null){
            throw new SQLException("Unable to load property file: " + propFileName);
        }
        //singleton
        if(props == null){
            props = new Properties();
            try {
                props.load(is);
            } catch (IOException e) {
                throw new SQLException("Unable to load property file: " + propFileName + "\n" + e.getMessage());
            }           
        }
        return props;
    }

    public static String getQuery(String query) throws SQLException{
        return getQueries().getProperty(query);
    }

}

Anda dapat menggunakan kueri Anda sebagai berikut:

PreparedStatement stm = c.prepareStatement(Queries.getQuery("update_query"));

Ini adalah solusi yang agak sederhana, tetapi bekerja dengan baik.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Entitas Oracle dalam kerangka entitas VS tidak memperbarui kunci utama dalam kode

  2. bekerja dengan json di oracle

  3. Oracle, PDO_OCI vs OCI8

  4. Pisahkan File Teks/CSV Besar menjadi Beberapa File di PL SQL

  5. Apakah kunci asing benar-benar diperlukan dalam desain basis data?