13

我正在开发一个基于 postgreSQL 数据库的 R 包。因此,有些.sql文件包含相应数据库的推荐表结构。

如果我想构建一个包(用于 CRAN),我想知道将这些文件放在哪里?

4

1 回答 1

16

也许将它们放在文件夹“inst”(顶级)中,例如 inst/sql

然后用户或您的功能可以访问那里的文件

base <- system.file('sql', package='bannertpackage')
sqls <- dir(base, "*sql", f=TRUE)

并执行它们

http://cran.r-project.org/doc/manuals/R-exts.html#Package-subdirectories

inst 子目录的内容会递归复制到安装目录。inst 的子目录不应干扰 R 使用的子目录(目前,R、data、demo、exec、libs、man、help、html 和 Meta,以及早期版本使用 latex、R-ex)。inst 的复制发生在 src 构建之后,因此它的 Makefile 可以创建要安装的文件。

在库文件夹中会有一个名为 sql 的顶级文件夹,这很好,您可以从 R 访问它,这正是您所需要的。

于 2013-08-23T10:20:14.507 回答