dbBuildTableDefinition

dbBuildTableDefinition

我正在研究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)"

最佳答案

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

    dbWriteTable(conn,"ee",employ)


您提供的命令只是构建定义表的MySQL命令。在数据库中没有创建任何实际的表。如果要创建表,可以使用dbBuildTableDefinition的值并将其插入dbGetQuery。例如:

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


请注意,通过这种方式,您只需创建表的定义,而无需在表中添加任何值。

关于mysql - R dbBuildTableDefinition mysql rmysql错误写入表格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26516501/

10-15 07:55