gpt4 book ai didi

mysql - 如何使用命令行中的连接参数在 groovy 中连接 mysql 数据库?

转载 作者:行者123 更新时间:2023-11-30 22:00:51 24 4
gpt4 key购买 nike

我需要从 Groovy 脚本连接我的 MySQL 数据库。由于此脚本的目的是用于数据库更新,并进行较小的更改;我需要能够使用 jar 文件提供必要的连接参数。我想动态输入连接参数,例如 dbUrl、dbUsername 和 dbPassword,以便我可以根据数据库输入这些参数。下面的代码成功连接到数据库,但它是手动的。如果我必须用于“测试”以外的其他数据库,我必须为每个数据库创建 jar 文件。

我对 groovy 比较陌生,如有任何帮助/建议,我将不胜感激。

我该如何处理?

 import groovy.sql.Sql
import java.sql.*
import java.io.File

Sql sql
def cities = []
try{
def url= 'jdbc:mysql://localhost:3306/test'
def username = 'username'
def password = 'password'
def driver = 'org.mariadb.jdbc.Driver'
sql = Sql.newInstance( url, username, password, driver)
sql.eachRow("select * from City where city are not null"){cities += it.city}
}catch(ClassNotFoundException | SQLException e){
e.printStackTrace
}

最佳答案

执行下面的脚本:

groovy dbscript jdbc:mysql://localhost:3306/test username password

数据库脚本.groovy

 import groovy.sql.Sql
import java.sql.*
import java.io.File

if ( args.size() != 3 ) {
println 'Please supply DB URL, username and password'
System.exit(0)
}

Sql sql
def cities = []
try{
def url= args[0]
def username = args[1]
def password = args[2]
def driver = 'org.mariadb.jdbc.Driver'
sql = Sql.newInstance( url, username, password, driver)
sql.eachRow("select * from City where city are not null"){cities += it.city}
}catch(ClassNotFoundException | SQLException e){
e.printStackTrace
}

关于mysql - 如何使用命令行中的连接参数在 groovy 中连接 mysql 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43418502/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com