如何使用 RSQLite 将数据 table 转换为 SQLite table?
How to convert data table into SQLite table using RSQLite?
我非常喜欢table使用 R,但我从未使用过 RSQLite 甚至 SQLite,所以我有一个问题,关于如何最好地使用 RSQLite 将数据从 R 中的数据框添加到SQLite table.
我知道我可以创建 tables 并像这样添加数据:
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 table?
可以用dbWriteTable
一次性写出table。阅读 vignette 以查看更多示例。
我非常喜欢table使用 R,但我从未使用过 RSQLite 甚至 SQLite,所以我有一个问题,关于如何最好地使用 RSQLite 将数据从 R 中的数据框添加到SQLite table.
我知道我可以创建 tables 并像这样添加数据:
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 table?
可以用dbWriteTable
一次性写出table。阅读 vignette 以查看更多示例。