Skip to content

Commit

Permalink
On Snowflake always using QUOTED_IDENTIFIERS_IGNORE_CASE=TRUE to av…
Browse files Browse the repository at this point in the history
…oid name mismatches when using quotes.
  • Loading branch information
Admin_mschuemi authored and Admin_mschuemi committed Sep 7, 2023
1 parent c2ae089 commit 4278904
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 5 deletions.
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Package: DatabaseConnector
Type: Package
Title: Connecting to Various Database Platforms
Version: 6.2.4
Version: 6.3.0
Date: 2023-09-07
Authors@R: c(
person("Martijn", "Schuemie", email = "[email protected]", role = c("aut", "cre")),
Expand Down
8 changes: 8 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
DatabaseConnector 6.3.0
=======================

Changes:

1. On Snowflake always using `QUOTED_IDENTIFIERS_IGNORE_CASE=TRUE` to avoid name mismatches when using quotes.


DatabaseConnector 6.2.4
=======================

Expand Down
3 changes: 2 additions & 1 deletion R/Connect.R
Original file line number Diff line number Diff line change
Expand Up @@ -709,7 +709,8 @@ connectSnowflake <- function(connectionDetails) {
user = connectionDetails$user(),
password = connectionDetails$password(),
dbms = connectionDetails$dbms,
"CLIENT_TIMESTAMP_TYPE_MAPPING"="TIMESTAMP_NTZ"
"CLIENT_TIMESTAMP_TYPE_MAPPING"="TIMESTAMP_NTZ",
"QUOTED_IDENTIFIERS_IGNORE_CASE"="TRUE"
)
}
return(connection)
Expand Down
11 changes: 8 additions & 3 deletions extras/TestOtherPlatforms.R
Original file line number Diff line number Diff line change
Expand Up @@ -68,11 +68,12 @@ scratchDatabaseSchemaDataBricks <- "scratch"
connectionDetailsSnowflake <- createConnectionDetails(
dbms = "snowflake",
connectionString = keyring::key_get("snowflakeConnectionString"),
# connectionString = paste(keyring::key_get("snowflakeConnectionString"), "QUOTED_IDENTIFIERS_IGNORE_CASE=TRUE", sep="&"),
user = keyring::key_get("snowflakeUser"),
password = keyring::key_get("snowflakePassword")
)
cdmDatabaseSchemaSnowflake <- "ohdsi.eunomia"
scratchDatabaseSchemaSnowflake <- "ohdsi.scratch"
cdmDatabaseSchemaSnowflake <- "ATLAS.SYNPUF110K_CDM_53"
scratchDatabaseSchemaSnowflake <- "ATLAS.RESULTS"

# Open and close connection -----------------------------------------------

Expand Down Expand Up @@ -709,7 +710,11 @@ db <- DBI::dbConnect(odbc::odbc(),
connection <- connect(connectionDetailsBigQuery)
renderTranslateQuerySql(connection, "SELECT TOP 1 \"person_id\" FROM @schema.person;", schema = cdmDatabaseSchemaBigQuery)

querySql(connection, "SELECT `person_id` FROM synpuf_2m.person LIMIT 1;")
querySql(connection, "SELECT \"PERSON_ID\" FROM ATLAS.SYNPUF110K_CDM_53.person LIMIT 1;")

disconnect(connection)


connection <- connect(connectionDetailsSnowflake)
renderTranslateQuerySql(connection, "SELECT TOP 1 \"person_id\" FROM @schema.person;", schema = cdmDatabaseSchemaSnowflake)
disconnect(connection)

0 comments on commit 4278904

Please sign in to comment.