问题标签 [jtds]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jtds - 加载了错误的驱动程序
我正在尝试通过使用 jdbc 的 jtds1.2.jar 实现并在其上运行存储过程来连接到 sqlServer 2008。 我写了一个测试应用程序,它成功地做到了。
我在自己的环境(不是应用程序服务器环境)中这样做有问题。我正在使用 java 1.4。我将我的类路径设置为首先查看 jtds。调用方法 DriverManager.getConnection... 时,源代码不是 jtds 源代码。这是我的代码(与示例中的代码相同):
在调试中:myEnum 有 2 个驱动程序:
sun.jdbc.odbc.jdbcodbcdriver
jtds 驱动程序
我很害怕 DriverManger 加载了第一个。
如何确保加载 jtds 驱动程序?
非常感谢
hibernate - 使用 Hibernate 的 SQLExpress 数据库的连接 URl
我正在使用jtds
驱动程序使用 Hibernate 在本地连接到 SQL Server
我可以使用服务器名称连接到服务器:COMP6\SQLEXPRESS
下面是我在 hibernate.cfg 中的连接属性
整个堆栈跟踪
sql-server - JTDS 驱动程序不适用于 Sql Server 2008R2 和 Denali Native SSPI 库未加载。检查 java.library.path 系统属性
我正在尝试使用 Windows 身份验证从我的应用程序使用 JTDS 驱动程序连接 Sql Server 数据库,但出现以下错误
SSO 失败:未加载本机 SSPI 库。检查 java.library.path 系统属性。
以下是我试图解决但仍然缺少某些内容的场景。
- 我在系统目录中添加了 ntlmauth.dll,它适用于 Sql server 2005。
- 但是我为 Sql Server 2008 R2 和 Denali 尝试过同样的事情,但它给了我与上面提到的相同的错误
- 我也考虑了一下,我的意思是我从系统目录中的 x64\SSO\ 路径复制了 ntlmauth.dll。
我很困惑为什么这不适用于 Sql Server 2008 R2 和 Denali。
java - 使用不同的 jdbc 驱动程序连接到多个数据库
我需要编写一个基于守护程序的 Java 进程(不是基于 Web),它将连接到 Oracle 10G 数据库,从中读取一些数据,然后连接到 SQL Server 数据库并将数据写入表。
听起来很简单,但我对此有几个疑问。
我需要有两个 jdbc 驱动程序,即一个用于连接到 Oracle 数据库,另一个用于连接到 sql server 数据库。sql server jdbc 驱动程序是 jtds jdbc 驱动程序(http://jtds.sourceforge.net/),对于 Oracle,我将使用标准的 oracle jdbc 驱动程序。我是否可能会同时遇到类路径中可用的两个驱动程序的任何问题?
我的猜测是,我只需要一个 ConnectionManager 类来管理连接和一个客户端 DAO 类,该类将调用相关方法来获取所需的连接,具体取决于它是从 Oracle 读取还是写入 SQL Server。这是一种合理的方法还是有更好的设计/模式?
编辑
好的,我试图组合一个快速的设计解决方案。见下图
我认为我遇到的问题是如何提交。下面是处理流程
- InvoiceBD 从工厂类获取 Oracle 连接,并调用 InvoiceUploadDAO.readData 将 Oracle 连接对象传递给它。
- InvoiceBD 从工厂类获取 SQL Server 连接并调用 InvoiceUploadDAO.writeData 将 SQL Server 连接对象传递给它。
- InvoiceBD 重用 Oracle 连接来调用 InvoiceUploadDAO.update 状态为 Oracle 数据库上的“完成”设置状态。
InvoiceBD 提交 Oracle 连接。InvoiceBD 提交 SQL Server 连接。
或者,如果出现问题,两个连接对象都会回滚。
那个听起来是对的吗?
谢谢
java - SQL Server“超过锁定请求超时时间”..再次
我在尝试延长 sql server SP 中的锁定超时时遇到问题。无论我尝试什么,它都会不断抛出“超过锁定请求超时期限”。我正在使用 java + jtds 1.2.2、c3p0 0.9.1 和 sql server 2008。我尝试的设置:
SET LOCK_TIMEOUT 10000 inside the SP and with con.createStatement().execute("SET LOCK_TIMEOUT 10000 ")
在调用 SP 之前。并在 SP 语句中: statement.setQueryTimeout(10);
SP 由 : s 调用tatement = con.prepareCall("dbo.store_procedure ?,?,?", ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY);
,它在内部设置“SET TRANSACTION ISOLATION LEVEL REPEATABLE READ”
有什么建议吗?有类似问题的人吗?提前致谢
sql - 具有绝对路径的 JTDS(到 Access MDB 文件的 JDBC 连接)
我花了很多时间寻找解决方案,尝试了谷歌,BING ,尝试了 JTDS 社区但没有解决方案,或者我没有足够的搜索,但这是我的情况:
我的项目中有 JTDS 库,并且想要连接到位于本地文件夹 (C:\path\to\databasefile.mdb) 的本地 MDB 数据库文件,但我看到的只是我需要以下连接字符串:
我想使用这样的东西:
可能吗?
java - 是否需要在 JTDS 中启用“keepalive”以提高性能?
在 JTDS 中启用“keepalive”配置后性能会提高多少?我今天查看了jtds 文档,发现了一个以前从未注意到的有趣配置“sockekeepalive”。你在当地测试过性能效果吗?由于默认值为“false”,我想在实际生产环境中使用“keepalive”可能会有一些开销。
谢谢你的建议!
万斯
java - 我可以在已经打开的 JTDS 连接上更改“appName”吗?
我正在寻找一种将 Web 应用程序事务信息传递到底层数据库进程的方法。在我的 Java 代码中,我可能有一个事务方法 ReservationService#search(),它运行一个或多个 SQL。在 DBMS 上,我只看到一个 SPID 和一些锁。我正在寻找一种将标签“ReservationService#search”添加到数据库进程的方法。
jTDS / Sybase ASE 有一个可以作为连接属性传入的 appName。由于我们使用的是连接池,因此会重新使用现有连接,但据我所知,appName 仅在建立新连接时才会读取。
如何在已经存在的连接上重新设置 appName(不关闭/打开)?或者,如果这根本不可能,是否还有其他想法可以将事务上下文信息从 Java 获取到 DBMS?
- Tomcat Web 应用程序 (Java 6)
- C3P0 连接池(仅支持 JDBC 3)
- jTDS 连接到 Sybase ASE 15
谢谢西蒙
jdbc - 使用带有 sqljdbc.jar 的 Windows 身份验证
SQL SERVER数据库可以使用windows认证方式,同时使用微软提供的JDBC驱动吗?
我正在使用 sqljdbc.jar .. SQLJdbcVersion 类文件包含以下内容:
任何意见?
sqljdbc不能使用windows认证有什么原因吗?
我正在使用 Websphere 应用程序服务器 7 并运行一个 j2ee 应用程序。数据源是在 WAS 本身中创建的。
谢谢
java - SQL Server 2008 的 JDBC 驱动程序列表(比较)
我正在评估一整套 JDBC 驱动程序,特别是与带有 Windows 身份验证的 SQL Server 2008 一起使用。我收集了一份我找到的清单,并在下面列出了它们。
我的问题是,是否还有其他与 SQL Server 2008 兼容的 JDBC 驱动程序我也应该考虑审查?
微软 JDBC 驱动程序
网址:http: //msdn.microsoft.com/en-us/sqlserver/aa937724
优点:用于 SQL Server 2008 的官方 Microsoft JDBC 驱动程序!基于几年前微软购买的 JNetDirect JSQLConnect 驱动程序 v3,从那时起他们一直在此基础上构建。JNetDirect JSQLConnect 的支持告诉我这一点。
缺点:似乎有很多连接/稳定性问题,不要相信我,只是谷歌吧:)。没有办法禁用我正在寻找的语句准备/池。
JDBC 合规性:尽管许多方法抛出 UnimplementedException,但声称是 JDBC 4.0 兼容的!!!!
JDBC 类型:4
价格:免费
进度数据直接
网址:http ://www.datadirect.com/index.html
优点:声称是一流的,被 Informatica 等众多应用程序使用,并且该公司已经存在很长时间了!获得快速支持 - 我已经简短地处理过他们。
缺点:?
JDBC 合规性:声称符合 JDBC 4.0
JDBC 类型:5
价格:不免费
JTDS
网址:http: //jtds.sourceforge.net/
优点:比官方的 Microsoft JDBC 驱动程序快得多。有一种禁用准备好的语句的方法。
缺点:?
JDBC 合规性:仅符合 JDBC 3.0。这对我来说是一个交易破坏者,因为不支持像 .validate() 和 .isClosed() 这样的重要方法,因为它们是 JDBC 4.0 方法。
JDBC 类型:4
价格:免费 - 开源
INET 梅利亚
网址: http: //www.inetsoftware.de/products/jdbc-driver/ms-sql/merlia
优点:比官方的 Microsoft JDBC 驱动程序快得多。有一种方法可以禁用准备好的语句。
缺点:?
JDBC 合规性:声称符合 JDBC 3.0/4.0
JDBC 类型:4
价格:不免费
JNetDirect JSQLConnect
网址:http ://www.jnetdirect.com/products/jsqlconnect.html
优点:比官方的 Microsoft JDBC 驱动程序快得多。有办法禁用准备好的语句
缺点:?
JDBC 合规性:声称符合 JDBC 3.0/4.0
JDBC 类型:4
价格:对于只有 1 个数据库连接的单个用户免费。
如果你能保持你的评论干净,我很乐意和其他人一起更新这篇文章。