`knitr`可以抑制sql块中的执行或输出吗?

时间:2016-11-05 23:48:23

标签: r knitr

下面的文档运行sql并显示结果。我不想通过不运行块或隐藏输出来显示任何输出。

有办法做到这一点吗?

---
output: html_document
---

## Hide SQL Output

First, set up a temporary database:

```{r}
library(RSQLite)
conn <- dbConnect(SQLite(), tempfile())
df <- data.frame(value = runif(1))
dbWriteTable(conn, "TestTable", df)
```

Now show a query, but try not to run it, and try
to hide the output.  Neither works:  it runs, and 
displays the table.

```{sql connection = conn,results="hide",eval=FALSE}
SELECT * FROM TestTable;
```

我得到这个输出: enter image description here

1 个答案:

答案 0 :(得分:2)

我找到了解决方法。如果我使用mysql引擎而不是sql引擎,则至少eval = FALSE有效:

```{mysql eval=FALSE}
SELECT * FROM TestTable;
```

将显示带语法高亮但不执行任何操作的代码。

我不知道是否也支持results="hide",因为我没有安装mysql。