library(datalibaba)
library(dplyr)
library(glue)
library(sf)
library(yaml)
# Lire le fichier de configuration
config <- yaml::read_yaml("../config.yml")
# Accéder à la valeur pour fichier_gpkg
fichier_gpkg <- config$fichier_gpkg
# Récupérer les variables liées à la base de données
database <- config$database
schema_name <- config$schema_name
primary_key <- config$primary_key
role <- config$role
On paramètre ensuite le nom de la couche avant de l’importer dans un dataframe :
# Paramétrer le nom de la couche
table_name <- "foret_publique"
# Importer la couche dans un dataframe du même nom que la couche
assign(table_name, sf::st_read(fichier_gpkg, layer = table_name, quiet = TRUE))
# Renommer la colonne
sf::st_geometry(foret_publique) <- "the_geom"
datalibaba::poster_data(data = foret_publique,
table = "n_bdt_foret_publique_s_r52",
schema = schema_name,
db = database,
pk = primary_key,
overwrite = TRUE,
user = role)
# Établir une connexion à la base de données PostgreSQL
connexion <- datalibaba::connect_to_db(db = database, user = role)
# Génération de la date du jour
date_now <- format(Sys.Date(), "%d/%m/%Y")
# Liste des requêtes SQL
table_comment <- glue::glue("COMMENT ON TABLE {schema_name}.n_bdt_foret_publique_s_r52
IS 'Forêt gérée par une structure publique. (Publiée le {date_now})';")
# Exécuter la commande SQL
DBI::dbExecute(connexion, table_comment)
source("../data/dico_foret_publique.R")
# Ajouter les commentaires sur les champs
post_dico_attr(dico = dico_foret_publique,
table = "n_bdt_foret_publique_s_r52",
schema = schema_name,
db = database,
user = role)
# Fermeture de la connexion à la base de données
DBI::dbDisconnect(connexion)
On paramètre ensuite le nom de la couche avant de l’importer dans un dataframe :
# Paramétrer le nom de la couche
table_name <- "parc_ou_reserve"
# Importer la couche dans un dataframe du même nom que la couche
assign(table_name, sf::st_read(fichier_gpkg, layer = table_name, quiet = TRUE))
# Renommer la colonne
sf::st_geometry(parc_ou_reserve) <- "the_geom"
datalibaba::poster_data(data = parc_ou_reserve,
table = "n_bdt_parc_ou_reserve_s_r52",
schema = schema_name,
db = database,
pk = primary_key,
overwrite = TRUE,
user = role)
# Établir une connexion à la base de données PostgreSQL
connexion <- datalibaba::connect_to_db(db = database, user = role)
# Génération de la date du jour
date_now <- format(Sys.Date(), "%d/%m/%Y")
# Liste des requêtes SQL
table_comment <- glue::glue("COMMENT ON TABLE {schema_name}.n_bdt_parc_ou_reserve_s_r52
IS 'Enceinte de parc ou de réserve naturelle où certaines activités sont régies par un règlement particulier. (Publiée le {date_now})';")
# Exécuter la commande SQL
DBI::dbExecute(connexion, table_comment)
source("../data/dico_parc_ou_reserve.R")
# Ajouter les commentaires sur les champs
post_dico_attr(dico = dico_parc_ou_reserve,
table = "n_bdt_parc_ou_reserve_s_r52",
schema = schema_name,
db = database,
user = role)
# Fermeture de la connexion à la base de données
DBI::dbDisconnect(connexion)