使用R的闪亮应用程序和SQL Server
我想学习R的闪亮功能。我现在正在通读这篇文章,我正试图重现这篇文章。这个示例只是编写一个应用程序,允许您选择一个特定的数据集并下载它。我试图按照示例中的精确编码格式进行操作,但我希望从SQL server中提取数据,将其存储在我的应用程序中,并允许其他人下载。我在下面的代码中添加了SQL调用函数,位于被动函数之上 我试着执行下面的代码,它运行时没有产生任何反馈错误或输出。我假设我的问题是在代码的服务器部分调用数据集的方式。如果您对我的代码或其他资源有任何反馈,我们将不胜感激。谢谢使用R的闪亮应用程序和SQL Server,r,shiny,R,Shiny,我想学习R的闪亮功能。我现在正在通读这篇文章,我正试图重现这篇文章。这个示例只是编写一个应用程序,允许您选择一个特定的数据集并下载它。我试图按照示例中的精确编码格式进行操作,但我希望从SQL server中提取数据,将其存储在我的应用程序中,并允许其他人下载。我在下面的代码中添加了SQL调用函数,位于被动函数之上 我试着执行下面的代码,它运行时没有产生任何反馈错误或输出。我假设我的问题是在代码的服务器部分调用数据集的方式。如果您对我的代码或其他资源有任何反馈,我们将不胜感激。谢谢 library
library(shiny)
library(RODBC)
ui <- fluidPage(
# App title ----
titlePanel("Downloading Data"),
# Sidebar layout with input and output definitions ----
sidebarLayout(
# Sidebar panel for inputs ----
sidebarPanel(
# Input: Choose dataset ----
selectInput("dataset", "Choose a dataset:",
choices = c("climate")),
# Button
downloadButton("downloadData", "Download")
),
# Main panel for displaying outputs ----
mainPanel(
tableOutput("table")
)
)
)
server <- function(input, output) {
conn <- odbcConnect("xyz")
query <- " SELECT XYZ..."
dataset <- sqlQuery(channel = conn, query = query)
# Reactive value for selected dataset ----
datasetInput <- reactive({
switch(input$dataset,
"climate" = dataset)
})
# Table of selected dataset ----
output$table <- renderTable({
datasetInput()
})
# Downloadable csv of selected dataset ----
output$downloadData <- downloadHandler(
filename = function() {
paste(input$dataset, ".csv", sep = "")
},
content = function(file) {
write.csv(datasetInput(), file, row.names = FALSE)
}
)
}
我认为您应该将服务器部分的前三行移到UI之前的最开始处。这至少是我使用类似应用程序的方式。