Connexion à une base de données postgresql

L'objectif est de se connecter directement à une base de données PostgreSQL, sans passer par la phase "export CSV".

Le script présenté ici permet de demander le mot de passe à chaque connexion, pour éviter de le stocker "en dur" dans le fichier.

Script fourni par Hilaire Drouineau, chercheur à l'IRSTEA.

## Installation de la bibliothèque et chargement du pilote
install.packages('RPostgreSQL')
library(RPostgreSQL)
db.driver<-dbDriver("PostgreSQL")
## Création de la fonction de saisie du mot de passe, avec effacement de la console après saisie
getPass=function() {
    print("password: ")
    pass=scan(n=1,what=character(),quiet=TRUE)
    cat("\014")
    return(pass)
}
##ouverture de la connexion
db.con <- dbConnect(db.driver, user="login", password=getPass(), dbname="database", host="serveur")
## exécution de la requête
rs <- dbSendQuery(db.con, "select (...)")
##Récupération des données
mydata<-fetch(rs,n=-1)