在 R Markdown 中使用 SQL?

Cin*_*i18 4 sql r r-markdown

我正在学习如何在 R 和 R Markdown 中使用 SQL。

我在互联网上搜索了一个解决方案,但没有任何效果。这是我到目前为止的所有代码:

---
title: "SQLTest"
author: "Cindy S. Cheung"
date: "9/30/2019"
output: html_document
---

```{r setup, include=FALSE}

install.packages("RSQLite", repos = "http://cran.us.r-project.org")

library(RSQLite)
library(DBI)
library(knitr)

db <- dbConnect(RSQLite::SQLite(), ":memory:")

knitr::opts_chunk$set(echo = TRUE)
knitr::opts_chunk$set(connection = "db")

```

```{sql, connection = db, output.var = "Order_Detail"}

dbSendStatement(db, "DROP TABLE IF EXISTS Order_Detail;")

```
Run Code Online (Sandbox Code Playgroud)

这是我得到的错误。

Error: near "dbSendStatement": syntax error
Failed to execute SQL chunk
Run Code Online (Sandbox Code Playgroud)

我尝试了各种版本的 SQL 块标记,但没有任何帮助。我究竟做错了什么?

谢谢。

Dic*_*oyT 9

您正在尝试在 SQL 代码块中执行 R 代码。直接传递 SQL 应该可以工作:

```{sql, connection = db}
DROP TABLE IF EXISTS Order_Detail
```
Run Code Online (Sandbox Code Playgroud)

或者,您可以指定为 R 代码块:

```{r}
dbSendStatement(db, "DROP TABLE IF EXISTS Order_Detail")
```
Run Code Online (Sandbox Code Playgroud)