使用插入与R

时间:2017-05-12 21:59:36

标签: sql r insert sqldf

我想在login.jsp中使用insert into sql语法在数据框中插入行但显示以下错误:

  

((sentax中的错误))

以下是我的代码示例:

R

我希望我的问题很清楚

1 个答案:

答案 0 :(得分:2)

一些有助于解决语法错误的修改:

  • 在函数名称中使用小写ssqldf()而不是Sqldf()
  • ","Vector[2]
  • 之间添加逗号
  • select * from main.Tst
  • 周围添加引号

另外,请注意:

  • Vector <- c("alex", 32)中异构内容类型的1d数据结构应该是一个列表(而不是所有内容属于同一类型的原子向量)。
  • 根据您使用的数据库驱动程序,如果您尝试将值插入空R数据框中,sqldf()可能会返回错误,就像您在代码中一样。在sqldf()调用中创建空数据框是避免这种情况的一种方法(在不知道您的数据库信息的情况下使用)。

例如,您可以使用以下内容来解决您获得的错误消息:

library(sqldf)
new <- list(name='alex', age=as.integer(32)) 
Tst <- sqldf(c("create table T1 (name char, age int)",
               paste0("insert into T1 (name, age) values ('", new$name[1],"',", new$age[1],")",sep=''),
               "select * from T1"))
Tst
# > Tst
#   name age
# 1 alex  32