1 package fr.ifremer.quadrige3.core.dao.technical.jdbc;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 import java.sql.*;
24
25
26
27
28 public class PostgresqlStatements {
29
30 private static final String RESET_ALL_SEQUENCES_SQL = "select reset_all_sequences();";
31
32 private static final String DISABLE_ALL_CONSTRAINTS_SQL = "set session_replication_role = replica;";
33
34 private static final String ENABLE_ALL_CONSTRAINTS_SQL = "set session_replication_role = origin;";
35
36 public static void resetAllSequences(Connection connection) throws SQLException {
37 execute(connection, RESET_ALL_SEQUENCES_SQL);
38 }
39
40 public static void setIntegrityConstraints(Connection connection, boolean enableIntegrityConstraints) throws SQLException {
41
42 if (!enableIntegrityConstraints) {
43 execute(connection, DISABLE_ALL_CONSTRAINTS_SQL);
44 }
45
46
47 else {
48 execute(connection, ENABLE_ALL_CONSTRAINTS_SQL);
49 }
50 }
51
52 private static void execute(Connection connection, String procedure) throws SQLException {
53 PreparedStatement stat = connection.prepareStatement(procedure);
54 stat.execute();
55 }
56
57 }