sql-server - 使用 groovy 连接到 SQL 服务器
问题描述
我正在使用 sqlserver express,我想从 groovy 进行连接并在控制台上显示数据现在我有一个错误并且它没有连接。我决定在这里展示我所拥有的,以便我们一起调试,
代码如下所示:
package com.connectgroovy
import groovy.sql.Sql
class GroovyConnectMssqlExample {
static main(args)
{
def conn = Sql.newInstance("jdbc:sqlserver://localhost:1433","DESKTOP-V2G35NU\\SQLEXPRESS","com.microsoft.sqlserver.jdbc.SQLServerDriver")
conn.eachRow("select * from [bonitasoft_jsonTest].[dbo].[people_data]"){
println "${it.fullname} | ${it.perdiem}"
}
}
}
我将此视为异常错误:
Caught: com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'DESKTOP-V2G35NU\SQLEXPRESS'.
com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'DESKTOP-V2G35NU\SQLEXPRESS'.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:197)
at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:246)
at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:83)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:2529)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:1905)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$000(SQLServerConnection.java:41)
at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:1893)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4575)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1400)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1045)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:817)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:700)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
at com.connectgroovy.GroovyConnectMssqlExample.main(GroovyConnectMssqlExample.groovy:9)
我做错了什么?
PS 我把 sqljdbc4.jar 作为引用库。在日食
解决方案
连接 URL - URL 通常包含要连接的服务器、端口以及要使用的数据库架构。示例:“jdbc:mysql://localhost:3306/test”
用户名和密码- 用于验证连接的凭据。示例:用户名 = 用户和密码 = 密码。
JDBC 驱动程序类- 用于连接数据库的 JDBC 驱动程序类。MySQL 案例示例:“com.microsoft.sqlserver.jdbc.SQLServerDriver”
def sql = Sql.newInstance("jdbc:sqlserver://localhost:1433/test",
"user", "password", "com.microsoft.sqlserver.jdbc.SQLServerDriver")
用于窗口身份验证
def sql =Sql.newInstance("jdbc:sqlserver://localhost;Database=myDB;integratedSecurity=true","com.microsoft.sqlserver.jdbc.SQLServerDriver")
推荐阅读
- regex - 大规模正则表达式搜索和替换模式之间
- amazon-web-services - AWS ALB 不同 url 路径的不同入口规则
- android - 如何通过意图调用 SamsungMobilePrint 扫描功能
- javascript - 使用基于路由器参数的 Vue http 获取数据
- java - 构造具有相同属性但对象名称不同的 POJO
- powerbi - 根据另一个表中的值计算一个表中的不同值
- oracle - 给出不同 ASCII 输出的 Oracle 程序
- jquery - 如何从角度调用jquery函数?
- apache-spark - 无法使用 Spark 在 Datastax 上初始化图形
- git - 我可以从 git 中得到一个只有冲突的补丁吗?