dbSendQuery
of dbGetQuery
is alleen voor het "SQL"-gedeelte, niet voor de psql-commando's zoals \i
.
In jouw geval is het inderdaad het eenvoudigst om readLines
te gebruiken maar verpak dan dbGetQuery
in een sapply
bellen.
con <- dbConnect(...) #Fill this as usual
queries <- readLines("query.sql")
sapply(queries, function(x) dbGetQuery(con,x))
dbDisconnect(con)
Aangezien ik dit heel vaak gebruik, heb ik hiervoor een snelkoppeling in mijn .Rprofile
bestand:
dbGetQueries<-function(con,queries)sapply(queries,function(x)dbGetQuery(con,x))
Je kunt natuurlijk ook naar het system
. gaan manier:
system("psql -U username -d database -h 127.0.0.1 -p 5432 -f query.sql") #Remember to use your actual username, database, host and port