问题标签 [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.
java - Hibernate 连接到错误的数据库
通过这种配置,hibernate 将我的程序连接到“master”数据库而不是“db_name”。我怎么解决这个问题?
编辑:jtds 1.2.5。
java - jTDS JDBC 驱动程序:getNString() 抛出错误
我正在使用 jtDS JDBC 驱动程序,当我调用时ResultSet.getNString(index);
出现以下异常:
当我使用getString(index)
它时工作正常.. 只是getNString()
我遇到问题并且我的 MSSQL 表中的列被定义为NVarChar
. 那么,什么给了?jtDS不支持getNString()
吗?也许它通过相同的功能获得VarChar
两者?NVarChar
getString()
编辑:
相关的 unicode 问题.. 我可以看到尝试使用 Unicode 也不适用于插入。我的列定义为nvarchar(255)
,但以下INSERT语句不起作用:
我输入的 unicode 字符在数据库中显示为问号。这通常发生在您忘记在插入语句中将N添加到所述参数之前。但是在这里您可以看到我明确指定了它。JtDS 的功能列表确实说它支持 NVARCHAR、NTEXT 等。但目前我只看到问题。我究竟做错了什么?
编辑 2
问题1已解决..我通过SSMS将一些汉字直接插入数据库,当我使用时getString(index)
,它工作正常。所以我猜jTDS似乎对所有文本类型都使用了getString。getNString(index)
奇怪的是,它不会为函数抛出某种不受支持的异常。
所以,现在我们剩下的问题是如何将 unicode 数据插入NVARCHAR列。这里肯定有人有过这方面的经验吗?
编辑 3
我将代码更改为在每个方法中使用准备好的语句,而不是尝试使用批处理并使用 setInt、setString 等方法。但是,我仍然遇到同样的问题......如果我将 setString() 用于 unicode,它会插入 ??? 进入我的数据库。如果我使用 setNString(),那么我会收到与我在执行 getNString 时在这篇文章顶部收到的错误相同的错误......这太疯狂了......如果这个驱动程序实际上不支持 unicode,它怎么会变得如此受欢迎?? 我在这里想念什么?该网站确实说它支持 NVARCHAR 等。所以为了使这项工作,我需要做什么疯狂的不直观的事情???
java - INSERT 失败,因为以下 SET 选项的设置不正确:'ARITHABORT'
我已经阅读了 Stackoverflow 中关于这个问题的主题,但我真的还没有解决方案。
我的问题是在 SQL Server 2008 的存储过程中将字符串或 Clob 作为 XML 参数发送。我正在使用 jTDS 连接它。我读过我必须将“ARITHABORT”设置为 ON,但我真的不知道在哪里可以做到。
也许在我自己的 JAVA 或 DB 会话中......请帮助!(对不起我的英语非常糟糕)
好的!这是给我错误的方法:
java - (JTDS) java.sql.SQLException:将数据类型 nvarchar 转换为数字时出错
我在使用 JTDS 从 SQL Server 2005 数据库中的视图读取时遇到问题,并且在寻找解决方案时遇到了严重问题。
查询只是选择视图中的所有内容:
此行抛出异常:
堆栈跟踪如下:
查看数据类型:
任何帮助将不胜感激。
varchar - jtds TDS 协议错误:数据包类型无效
我正在使用 jTDS 库 (v1.2.6) 连接到 Sybase ASA v11.0.1,每次尝试返回 varchar 数据时都会出现以下错误
协议错误:数据包类型无效
0x0
(或x4
或x7
)
当我返回时间戳或数值时,查询工作正常。知道是什么导致了这个错误或如何解决它吗?
java - SQL Server JTDS 连接问题
这很奇怪,我正在连接一个为 Windows 配置了集成身份验证的 sql server 2008 实例。我找到了一种通过在代码中执行此操作来绕过集成身份验证的方法:
因此,在上面对 jtds 驱动程序进行 name 类之后,它可以完美运行。但是,我需要将其作为连接字符串放在配置文件中,并且当我更改上述内容以使用 getConnection 上的方法调用而不明确发送用户名时,密码参数如下:
我得到一个 Native SSPI library not loaded 异常,因为它试图使用 Windows 身份验证进行身份验证。所以我发现 jts 分发中的 dll 将 ntlmauth.dll 添加到我的 bin 和系统类路径中,然后我得到一个不受信任的域登录异常,我知道我可以通过在域下执行“RUNAS.exe”来解决它,但这让我回到不得不使用我不想要的集成身份验证。
问题归结为,为什么我可以通过将用户名和密码作为参数传递给 getConnection() 方法来创建没有任何问题的连接,但是当我不这样做时,它会强制集成身份验证。如果我自己在代码中创建连接,这将不是问题,但我需要一个连接字符串来放入我的属性文件并且不知道如何构造一个将调用 getConnection() 并提供用户名、密码的连接字符串作为参数。
我讨厌这些乏味的问题已经谷歌搜索但空手而归,任何输入都会有所帮助。- 邓肯
sql-server - 禁用 Hibernate 调用存储过程的事务
对于我们的 Web 应用程序,所有数据库访问都是通过存储过程执行的。这个设计决定是一成不变的,我无法改变它。
此外,所有事务处理都在存储过程中完成。Java 层不得使用事务。
我可以使用普通的 JDBC 轻松完成此操作。但我更喜欢使用 Hibernate 的 ORM 和缓存功能。
使用 Hibernate 调用存储过程很容易:
但是当我运行数据库配置文件时,我看到以下内容。
无论如何我可以禁用 4x 交易语句吗?
我的技术栈如下。
- 春天 3.1.2
- 休眠 4.1.8
- jTDS(JDBC驱动)1.2.5
- 微软 SQL 服务器 10.x
非常感谢……亚当。
@ctapobep - 这是使用普通 JDBC 完成的。
这就是配置文件中显示的内容 - 完美运行!
java - 从更新语句返回 ResultSet?
我试图返回我更新的受影响行的 id。我想知道,为什么我没有从这里得到一个 ResultSet (只有主键可以),即使我设置了Statement.RETURN_GENERATED_KEYS
?我使用最新的 jTDS 驱动程序 1.3.0 连接到 Microsoft SQL Server。
这里有什么建议吗?
android - Android 4.1 SQL 服务器连接
我正在使用 android 4.1.1、IDE= eclipse 和 SQL Server 2008。
当我在 UI 线程上运行代码片段时,它给了我错误“无法从 SQL Server 获取信息:”,但如果我在后台线程或 AsyncTask 线程中运行代码,它就可以工作。对于理解这两个过程的任何帮助将不胜感激?
注意:“当我将 minSDKVersion 从 8 升级到 10 时出现此问题。”
java - 使用 JTDS 和 Scala 时出现不支持的版本错误
我正在尝试使用 Java JTDS 驱动程序连接到我在 Scala 中的数据库。但是,每当我尝试使用它时,我都会收到一个错误,即版本(java?)是错误的。
java.lang.UnsupportedClassVersionError:net/sourceforge/jtds/jdbcx/JtdsDataSource:不支持的major.minor版本51.0
- 斯卡拉版本:2.9.2
- Java版本:1.6
- 使用 jtds 1.3.0
- java -版本的输出:
java 版本“1.6.0_35”Java(TM) SE 运行时环境(构建 1.6.0_35-b10-428-11M3811)Java HotSpot(TM) 64 位服务器 VM(构建 20.10-b01-428,混合模式)