没有使用 RMySQL 选择数据库
No database selected with RMySQL
我正在尝试使用 RMySQL
连接到远程 public 可访问 MySQL 服务器 EnsEMBL public 服务器,但是当我尝试列出表,出现错误:
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
有没有办法找出名字?还是我犯了一个完全不同的错误?
您必须在 dbConnect 调用中指定数据库的名称。例如:
mydb = dbConnect(MySQL(),
user = 'anonymous',
port = 5306,
host = 'asiadb.ensembl.org',
db = 'homo_sapiens_core_83_38')
dbListTables(mydb)
奇怪的是 database = 'testdb'
在 R
中用 dbExecute
执行
db <- dbConnect(RMySQL::MySQL(),
user = 'root',
password = 'pwd123',
host = 'localhost',
database = 'testdb'
)
dbExecute(db, MySQLStatement) # Executed Without Error
但使用时 dbListTables(db)
显示未选择数据库。
将 database
更改为 db
按预期工作
db <- dbConnect(RMySQL::MySQL(),
user = 'root',
password = 'pwd123',
host = 'localhost',
db = 'testdb'
)
我正在尝试使用 RMySQL
连接到远程 public 可访问 MySQL 服务器 EnsEMBL public 服务器,但是当我尝试列出表,出现错误:
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
有没有办法找出名字?还是我犯了一个完全不同的错误?
您必须在 dbConnect 调用中指定数据库的名称。例如:
mydb = dbConnect(MySQL(),
user = 'anonymous',
port = 5306,
host = 'asiadb.ensembl.org',
db = 'homo_sapiens_core_83_38')
dbListTables(mydb)
奇怪的是 database = 'testdb'
在 R
dbExecute
执行
db <- dbConnect(RMySQL::MySQL(),
user = 'root',
password = 'pwd123',
host = 'localhost',
database = 'testdb'
)
dbExecute(db, MySQLStatement) # Executed Without Error
但使用时 dbListTables(db)
显示未选择数据库。
将 database
更改为 db
按预期工作
db <- dbConnect(RMySQL::MySQL(),
user = 'root',
password = 'pwd123',
host = 'localhost',
db = 'testdb'
)