Skip to content

Commit 11cf8e6

Browse files
Peter Brantpbrant
authored andcommitted
Allow DatabaseAdapter to configure statement settings
1 parent e1256e7 commit 11cf8e6

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

src/main/scala/org/squeryl/internals/DatabaseAdapter.scala

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ trait DatabaseAdapter {
309309
protected def execFailSafeExecute(sw: StatementWriter, silenceException: SQLException => Boolean): Unit = {
310310
val s = Session.currentSession
311311
val c = s.connection
312-
val stat = c.createStatement
312+
val stat = createStatement(c)
313313
val sp =
314314
if(failureOfStatementRequiresRollback) Some(c.setSavepoint)
315315
else None
@@ -346,20 +346,26 @@ trait DatabaseAdapter {
346346
_exec[A](s, sw, block, p)
347347
}
348348

349+
protected def prepareStatement(conn: Connection, statement: String): PreparedStatement =
350+
conn.prepareStatement(statement)
351+
352+
protected def createStatement(conn: Connection): Statement =
353+
conn.createStatement()
354+
349355
def executeQuery(s: Session, sw: StatementWriter) = exec(s, sw) { params =>
350-
val st = s.connection.prepareStatement(sw.statement)
356+
val st = prepareStatement(s.connection, sw.statement)
351357
fillParamsInto(params, st)
352358
(st.executeQuery, st)
353359
}
354360

355361
def executeUpdate(s: Session, sw: StatementWriter):(Int,PreparedStatement) = exec(s, sw) { params =>
356-
val st = s.connection.prepareStatement(sw.statement)
362+
val st = prepareStatement(s.connection, sw.statement)
357363
fillParamsInto(params, st)
358364
(st.executeUpdate, st)
359365
}
360366

361367
def executeUpdateAndCloseStatement(s: Session, sw: StatementWriter): Int = exec(s, sw) { params =>
362-
val st = s.connection.prepareStatement(sw.statement)
368+
val st = prepareStatement(s.connection, sw.statement)
363369
fillParamsInto(params, st)
364370
try {
365371
st.executeUpdate

0 commit comments

Comments
 (0)