db_create_new_schema.R 948 B

1234567891011121314151617181920212223242526272829
  1. #' Create the new schema
  2. #'
  3. #' Loome andmebaasi uue schema. Selleks tuleb schema uus nimi lisada conf muutujale. Konfiguratsiooni algväärtused \code{\link[ruut]{get_config}}.
  4. #' @param conf A list() of configuration variables. Default values \code{\link[ruut]{get_config}}.
  5. #' @return New schema created.
  6. #' @seealso [ruut::db_connect()], [ruut::get_config()]
  7. #' @keywords database, schema
  8. #' @export
  9. #' @examples
  10. #' \dontrun{
  11. #'
  12. #' config <- get_config()
  13. #' db_create_new_schema(conf = config)
  14. #'
  15. #' }
  16. db_create_new_schema <- function(conf) {
  17. if (!ruut::db_is_shema_exist(conf$schema)) {
  18. conn <- ruut::db_connect()
  19. DBI::dbExecute(conn, sprintf(
  20. "-- DROP SCHEMA x_matsalu;
  21. CREATE SCHEMA %s AUTHORIZATION %s;", conf$schema, conf$user
  22. ))
  23. # Disconnect
  24. lapply(DBI::dbListConnections(RPostgreSQL::PostgreSQL()), DBI::dbDisconnect)
  25. }
  26. }
  27. # conf <- ruut::get_config()
  28. # conf$schema <- "x_valga"
  29. # db_create_new_schema(conf)