#' 生成数据库配置文件
#'
#' @param ip 数据库IP地址
#' @param port 端口号
#' @param user_name 用户名
#' @param password 密码
#' @param db_name 数据库服务
#'
#' @return 返回值
#' @import rstudioapi
#' @export
#'
#' @examples
#' callDBConfig();
callDBConfig <- function(ip='115.159.201.178',
port='1433',
user_name='sa',
password='Hoolilay889',
db_name='kjco'
){
library(rstudioapi);
insertText(paste0("ip='",ip,"'"));
insertText("\n");
insertText(paste0("port=",port,""));
insertText("\n");
insertText(paste0("user_name='",user_name,"'"));
insertText("\n");
insertText(paste0("password='",password,"'"));
insertText("\n");
insertText(paste0("db_name='",db_name,"'"));
insertText("\n");
}
#' 生成数据库配置文件
#'
#' @return 返回值
#' @import rstudioapi
#' @export
#'
#' @examples
#' callOpenConfig();
callOpenConfig <- function(){
library(rstudioapi);
insertText(paste0("conn_info = tsda::conn_config(config_file = conn_cfg)"));
insertText("\n");
insertText(paste0("conn = tsda::conn_open(conn_config_info = conn_info)"));
insertText("\n");
}
#' 生成数据库配置文件
#'
#' @return 返回值
#' @import rstudioapi
#' @export
#'
#' @examples
#' callCloseConfig();
callCloseConfig <- function(){
library(rstudioapi);
insertText(paste0("tsda::conn_close(conn)"));
insertText("\n");
}
#' 注册数据库配置文件
#'
#' @return 返回值
#' @include regAddin.R
#' @import shiny
#' @import miniUI
#' @export
#'
#' @examples regAddinUI();
runDBConfig <- function() {
# Our ui will be a simple gadget page, which
# simply displays the time in a 'UI' output.
ui <- miniPage(
gadgetTitleBar("数据库配置文件"),
miniContentPanel(
shiny::textInput("ip", "服务器IP",value = '127.0.0.1'),
shiny::textInput("port", "端口号",value = '1433'),
shiny::textInput("user_name", "用户名",value = 'sa'),
shiny::textInput("password", "密码",value = '123'),
shiny::textInput("db_name", "数据库名称",value = 'py_test')
))
server <- function(input, output, session) {
observeEvent(input$done, {
callDBConfig(ip = input$ip,port = input$port,user_name = input$user_name,password = input$password,db_name = input$db_name)
stopApp()
})
}
# We'll use a pane viwer, and set the minimum height at
# 300px to ensure we get enough screen space to display the clock.
viewer <- paneViewer(300)
runGadget(ui, server, viewer = viewer)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.