Bonjour,

Je cherche à incrémenter des données dans une table Postgres à partir d'un filtre dans Shiny. J'ai du mal à voir comment coupler le language SQL et la synthaxe de R.

J'ai fait une connection à mon serveur postgreSQL et j'ai récupéré les nom d'EPCI issu de ma table "osm_2019_communes"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
pool <- dbPool(drv = dbDriver("PostgreSQL", max.con = 100), user = "X", password = "Y", host = "Z", port = 5432, dbname = "XXXX", idleTimeout = 3600000)
 
base <- dbGetQuery(pool, 'SELECT * FROM territoire.osm_2019_communes;')
Les nom des EPCI sont stockés ici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
selectInput("f_epci", h4(strong("Sélectionnez votre territoire :")), base["epci"], multiple = TRUE),
J'ai stocké le filtre ici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
select_territory <- eventReactive(input$submit, {
    if(is.null(input$f_epci))
      shinyjs::alert("Pas de territoire selectionné !")
    else (base %>% filter_(input$f_epci))
  })
La ou je bloque c'est pour envoyer les données filtrées dans une autre table Postgres. J'ai commencé par ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
observeEvent(input$submit, {
    update_data <- dbGetQuery(pool, paste0("INSERT INTO territoire.communes(code_com, code_epci, code_dept, code_reg)", "VALUES ('",select_territory()["code_com"],"'",",","'",select_territory()["code_epci"],"'",",","'",select_territory()["code_dept"],"'",",","'",select_territory()["code_reg"],"')"))
  })
Sans succès.Il me dit :

Error :<text>:1:4: unexpected symbol
1: CA du
^
Merci de votre aide !!