首页 > 解决方案 > SelectInput R 闪亮

问题描述

我是 R 闪亮的初学者。我使用 Oracle 数据库。

我有一张桌子T_Client(CLI_ID, CLI_NAME, CLI_INFO)

我在使用反应函数的 selectinput 中CLI_NAME 显示T_CLIENTsqlOutput()

但是我无法显示 中的所有列,该T_CLIENT 功能无法正常工作。renderTablesqlOutput()

请问有什么帮助吗?提前致谢。

library(DBI)
library(ROracle)
library(shinydashboard)

header <- dashboardHeader()

sidebar <- dashboardSidebar()

body <- dashboardBody(
  uiOutput("ui_assetClass"),
  tableOutput("table2"))

shinyApp(
  ui = dashboardPage(header, sidebar, body),
  server = function(input, output, session= open()) {
    
    drv <- dbDriver("Oracle")
    host <- "host"
    port <- xxxx
    svc <- "svc"
    connect.string <- paste(
      "(DESCRIPTION=", "(ADDRESS=(PROTOCOL=tcp)(HOST=", host, ")(PORT=", port, "))",
      "(CONNECT_DATA=(SERVICE_NAME=", svc, ")))", sep = "")
    DB <- dbConnect(drv, username = "username", password = "password", dbname = connect.string)
    
    
    sqlOutput<- reactive({
      
   sqlInput<- dbGetQuery(DB,"select CLI_NAME from T_CLIENT")
      
      sqlInput
    })
    
    output$ui_assetClass <- renderUI({
      selectInput(" Clients", "choose client", choices = sqlOutput())
    })
    
    
    dabaBaseInput2 <- reactive({
      x <- dbGetQuery(DB, sprintf("SELECT CLI_ID, CLI_NAME, CLI_INFO FROM T_CLIENT where CL_NOM = '%s' ",sqlOutput()))
      x
    })
    
    output$table2 <- renderTable({
      dabaBaseInput2()
    })
    
  })

标签: rshinyshinydashboardshiny-reactivityroracle

解决方案


推荐阅读