This function executes SQL consisting of one or more statements.
executeSql(
connection,
sql,
profile = FALSE,
progressBar = !as.logical(Sys.getenv("TESTTHAT", unset = FALSE)),
reportOverallTime = TRUE,
errorReportFile = file.path(getwd(), "errorReportSql.txt"),
runAsBatch = FALSE
)
The connection to the database server created using either
connect()
or dbConnect()
.
The SQL to be executed
When true, each separate statement is written to file prior to sending to the server, and the time taken to execute a statement is displayed.
When true, a progress bar is shown based on the statements in the SQL code.
When true, the function will display the overall time taken to execute all statements.
The file where an error report will be written if an error occurs. Defaults to 'errorReportSql.txt' in the current working directory.
When true the SQL statements are sent to the server as a single batch, and executed there. This will be faster if you have many small SQL statements, but there will be no progress bar, and no per-statement error messages. If the database platform does not support batched updates the query is executed without batching.
This function splits the SQL in separate statements and sends it to the server for execution. If an error occurs during SQL execution, this error is written to a file to facilitate debugging. Optionally, a progress bar is shown and the total time taken to execute the SQL is displayed. Optionally, each separate SQL statement is written to file, and the execution time per statement is shown to aid in detecting performance issues.
if (FALSE) {
connectionDetails <- createConnectionDetails(
dbms = "postgresql",
server = "localhost",
user = "root",
password = "blah",
schema = "cdm_v4"
)
conn <- connect(connectionDetails)
executeSql(conn, "CREATE TABLE x (k INT); CREATE TABLE y (k INT);")
disconnect(conn)
}