【问题标题】:How to create a dynamic query using select input如何使用选择输入创建动态查询
【发布时间】:2020-01-24 22:55:27
【问题描述】:

我正在尝试使用选择输入创建动态查询。

有点像

Select * from basket where fruits in("apple","banana","cherry")

我有一个名为fruit_list 的表格,它填充了我的选择输入框。

selectInput("fruit_list", label = h5("Select fruit"), multiple = T, 
  choices = (dbGetQuery(conn, "SELECT fruit from fruit_list');"))) 

到目前为止,当我渲染打印我的选择时,我得到“apple”“banana”“cherry” 我需要在元素之间使用逗号来获得“apple”、“banana”、“cherry” 当我从多选框“apple”中选择一个元素时

Select * from basket where fruits in("apple")

我的应用程序运行良好。但是,当我选择多个元素“apple”“banana”时,会出现错误: Expecting a single string value: [type=character;范围=2]。

【问题讨论】:

标签: r shiny r-markdown shiny-reactivity shinyapps


【解决方案1】:

paste('dbGetQuery(conn,"Select fruit from fruits;", collapse =', '))

【讨论】:

  • 这会使应用程序面临许多安全漏洞,例如 SQL 注入。请不要这样做。 @yifyan 在上面的 cmets 中提出了更好的选择。
  • 呃,不知道。很有趣,你能不能给我一些关于安全漏洞的细节。
猜你喜欢
  • 1970-01-01
  • 2021-02-07
  • 2011-11-22
  • 1970-01-01
  • 1970-01-01
  • 2013-04-06
  • 1970-01-01
  • 1970-01-01
  • 2014-06-09
相关资源
最近更新 更多