db_connect.R 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #' Connect to database
  2. #'
  3. #' Andmebaasiga ühenduse looomine.
  4. #' @param conf list List of configuration data. Rewrite it.
  5. #' @keywords database, schema
  6. #' @export
  7. #' @examples
  8. #' config <- get_config()
  9. #' conn <- db_connect(conf = config)
  10. db_connect <- function(conf = NULL) {
  11. if (is.null(conf)) {
  12. config <- ruut::get_config()
  13. } else {
  14. config <- conf
  15. }
  16. # DBI::dbDisconnect(conn)
  17. if (all(c("dbname", "host", "port", "user", "password") %in% names(config))) {
  18. try(conn <- DBI::dbConnect(RPostgreSQL::PostgreSQL(),
  19. dbname = config$dbname, host = config$host,
  20. user = config$user, password = config$password,
  21. port = config$port
  22. ))
  23. } else {
  24. conn <- NULL
  25. print("Andmebaasiga \U00FChendamise parameetrid puudulikud. Palun kontrolli konfiguratsiooni faili.")
  26. return()
  27. }
  28. # ## Andmebaasiga ühenduse kontroll
  29. # if (exists("conn") && !inherits(conn, "try-error")) {
  30. # print("Connection exist")
  31. # } else {
  32. # print("Connection error")
  33. # }
  34. return(conn)
  35. }
  36. # dbDisconnect(conn)