R dbBuildTableDefinition写一个表的mysql rmysql错误

时间:2014-10-22 20:26:46

标签: mysql r rmysql

我正在研究安装在Linux / Ubuntu系统上的R。我想写一个表到数据库。为什么不起作用?

我能够删除表格并能够显示表格中的数据。简而言之,我的dbGetQuery和dbRemoveTable工作正常。

 employee <- c('John Doe','Peter Gynn','Jolie Hope')
 salary <- c(3, 2, 1)

 employ<- data.frame(employee, salary)

>  employ
    employee salary
1   John Doe      3
2 Peter Gynn      2
3 Jolie Hope      1
> dbBuildTableDefinition(dbh,"ee",employ)
[1] "CREATE TABLE ee \n( row_names text,\n\temployee text,\n\tsalary double \n)"

1 个答案:

答案 0 :(得分:1)

您可以通过dbWriteTable函数直接编写表格。如果conn是您的连接对象,在这种情况下您应该尝试:

    dbWriteTable(conn,"ee",employ)

您提供的命令只构建定义表的MySQL命令。数据库中未创建实际表。如果要创建表格,可以取dbBuildTableDefinition的值并将其插入dbGetQuery。例如:

    tableDef<-dbBuildTableDefinition(dbh,"ee",employ)
    dbGetQuery(conn,tableDef)

请注意,这样您只需创建表的定义,而不在其中添加任何值。