Sql 使用SHINK绘制数据库值

Sql 使用SHINK绘制数据库值,sql,r,shiny,rodbc,Sql,R,Shiny,Rodbc,我已经浏览了许多关于SQL和RODBC的不同帖子,但出于某种原因,我似乎无法理解这一点。我已经创建了一个闪亮的应用程序。用户将输入选择的日期范围,并显示带有查询数据的绘图。然而,这是行不通的。我已经尝试过用SQL字符串对这些天进行编码,这很有效。因此,我指出了日期没有正确地传递到sql字符串中的问题。我已经尝试了paste0(),但是读到sprintf()对于具有多个值更有效。顺便说一句,我正在查询一个PI服务器。这是我的密码: 服务器 library(shiny) library(RODBC)

我已经浏览了许多关于SQL和RODBC的不同帖子,但出于某种原因,我似乎无法理解这一点。我已经创建了一个闪亮的应用程序。用户将输入选择的日期范围,并显示带有查询数据的绘图。然而,这是行不通的。我已经尝试过用SQL字符串对这些天进行编码,这很有效。因此,我指出了日期没有正确地传递到sql字符串中的问题。我已经尝试了
paste0()
,但是读到
sprintf()
对于具有多个值更有效。顺便说一句,我正在查询一个PI服务器。这是我的密码:

服务器

library(shiny)
library(RODBC)



shinyServer(function(input, output) {

Connection <- odbcConnect(dsn = "PIWHI", believeNRows = FALSE, rows_at_time =1)

x <- reactive({input$range[1]})
y <- reactive({input$range[2]})


query <- sprintf("SELECT time, value
          FROM picomp
          WHERE tag = 'A80100'
          AND time >= DATE('%s')
          AND time <= DATE('%s')", x,y)

LineX <- sqlQuery(WhitingPI, query)


Gravity <- LineX$VALUE
Time <- LineX$TIME

output$den <- renderPlot({plot(Time,Gravity)})


}
)

reactive
返回的值是一个函数<
query
中的code>x和
y
需要被称为
x()
y()
。另外,
query
本身和相关数量可能需要是
反应性的。我也提出了被动查询,但我仍然面临同样的问题。
library(shiny)
library(reshape)

shinyUI(pageWithSidebar(
  # Application title
  headerPanel("Monitoring Tool"),

  sidebarPanel(
   dateRangeInput('range',
                  label = 'Date input: dd-mm-yyyy. Controls start and end of date range input in main panel.',
                  start = Sys.Date()-1, end = Sys.Date(),
                  format = "dd-M-yyyy", startview = 'year', language = 'en', weekstart = 1),

   sliderInput("sigmacoef", "Confidence Level",min = 0, max = 5, value = 2, step =0.5),
   submitButton("Update View")
   ),
  mainPanel(
   plotOutput("den")

  )
    ))