3

我使用 R 很舒服,但我从来没有使用过 RSQLite 甚至 SQLite,所以我有一个关于如何最好地使用 RSQLite 将数据从 R 中的数据框添加到 SQLite 表的问题。

我知道我可以像这样创建表格并添加数据:

db <- dbConnect(SQLite(), dbname="Test.sqlite")

dbSendQuery(conn = db,  "CREATE TABLE School (SchID INTEGER,
        Location TEXT, Authority TEXT, SchSize TEXT)")

dbSendQuery(conn = db,
            "INSERT INTO School
         VALUES (1, 'urban', 'state', 'medium')")
dbSendQuery(conn = db,
            "INSERT INTO School
         VALUES (2, 'urban', 'independent', 'large')")
dbSendQuery(conn = db,
            "INSERT INTO School
         VALUES (3, 'rural', 'state', 'small')")

但是,要执行多个这样的 INSERT 语句,我需要使用 for 循环解析数据帧的所有行。是否可以使用向量和单个 INSERT 来使用数据框中的所有值填充 SQLite 表?

4

1 回答 1

7

您可以使用dbWriteTable一口气写表。阅读小插图以查看更多示例。

于 2017-07-07T18:39:11.727 回答