我在Postgresql数据库中有一个表,它有一个BIGSERIAL自动递增主键.使用以下方法重新创建
@H_404_20@CREATE TABLE foo ( "Id" bigserial PRIMARY KEY,"SomeData" text NOT NULL );
我想通过RPostgresql包从R向该表附加一些数据.在R中,数据不包括Id列,因为我希望数据库生成这些值.
dfr <- data.frame(SomeData = letters)
这是我用来尝试编写数据的代码:
library(RPostgresql) conn <- dbConnect( "Postgresql",user = "yourname",password = "your password",dbname = "test" ) dbWriteTable(conn,"foo",dfr,append = TRUE,row.names = FALSE) dbDisconnect(conn)
不幸的是,dbWriteTable抛出一个错误:
## Error in postgresqlgetResult(new.con) : ## RS-DBI driver: (could not Retrieve the result : ERROR: invalid input Syntax for integer: "a" ## CONTEXT: COPY foo,line 1,column Id: "a" ## )