Importe o despejo do MySQL para o R (sem a necessidade de servidor MySQL)

Pacotes comoRMySQL esqldf permitir que um faça interface com servidores de banco de dados local ou remoto. Estou criando um projeto portátil que envolve a importação de dados sql em casos (ou em dispositivos) que nem sempre têm acesso a um servidor em execução, mas queFaz sempre tenha acesso ao despejo .sql mais recente do banco de dados.

O objetivo parece bastante simples: importar um dump .sql para o R sem o envolvimento de um servidor MySQL. Mais especificamente, gostaria de criar uma lista de listas nas quais os elementos correspondam a qualquer banco de dados definido no dump .sql (pode haver vários) e esses elementos, por sua vez, consistem nas tabelas desses bancos de dados.

Para tornar isso reproduzível, vamos pegar o arquivo SQL sportsdb de exemploaqui - se você descompactá-lo, chama-se sportsdb_sample_mysql_20080303.sql.

Alguém poderia pensar que o sqldf poderia fazê-lo:

read.csv.sql('sportsdb_sample_mysql_20080303.sql', sql="SELECT * FROM addresses") Error in sqliteSendQuery(con, statement, bind.data) : error in statement: no such table: addresses

Isso mesmo que certamente exista uma tabela de endereços no despejo.Esta postagem na lista sqldf menciona o mesmo erro, mas não há solução.

Então há umsql.reader função no pacoteProjectTemplate, o que parece promissor. Procurando, a fonte para a função pode ser encontradaaquie assume um servidor de banco de dados em execução e depende deRMySQL - não é o que eu preciso.

Então ... parece que estamos ficando sem opções. Qualquer ajuda do hivemind apreciada!

(Para reiterar, eu sounão procurando uma solução que dependa do acesso a um servidor SQL; isso é fácil comdbReadTable deRMySQL pacote. Gostaria muito de ignorar o servidor e obter os dados diretamente do arquivo de despejo .sql.)

questionAnswers(3)

yourAnswerToTheQuestion