sql >> Database >  >> RDS >> PostgreSQL

SQL-querybestanden uitvoeren via RPostgreSQL

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



  1. MySQLTest-fout bij het proberen om C# te verbinden met MySql

  2. SST-bewerking op een Galera-cluster stoppen of gas geven

  3. Wat is de aanbevolen manier om gebruikerswachtwoorden in een database te coderen?

  4. SYS_GUID() Functie in Oracle