没有使用RMySQL选择数据库

时间:2016-01-09 20:15:18

标签: r rmysql

我正在尝试使用RMySQL连接到远程可公开访问的MySQL服务器EnsEMBL公共服务器,但是当我尝试列出表时,会发生错误:

library(RMySQL)

mydb = dbConnect(MySQL(), 
                 user = 'anonymous',
                 port = 5306,
                 host = 'asiadb.ensembl.org')

dbListTables(mydb)

Error in .local(conn, statement, ...) : 
  could not run statement: No database selected

有没有办法找出这个名字?或者我是否完全犯了一个完全不同的错误?

2 个答案:

答案 0 :(得分:7)

您必须在dbConnect调用中指定db的名称。例如:

mydb = dbConnect(MySQL(), 
                 user = 'anonymous',
                 port = 5306,
                 host = 'asiadb.ensembl.org',
                 db = 'homo_sapiens_core_83_38')

dbListTables(mydb)

答案 1 :(得分:0)

奇怪的是 n = 100; A = randn(14,n); b = randn(14,1); cvx_begin variable x(n) minimize( norm( A*x-b ) cvx_end echo off database = 'testdb' 中与 dbExecute 一起执行

R

但是当使用 db <- dbConnect(RMySQL::MySQL(), user = 'root', password = 'pwd123', host = 'localhost', database = 'testdb' ) dbExecute(db, MySQLStatement) # Executed Without Error 时显示没有选择数据库。

dbListTables(db) 更改为 database 按预期工作

db