gpt4 book ai didi

java - (JTDS) java.sql.SQLException : Error converting data type nvarchar to numeric

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:20:39 25 4
gpt4 key购买 nike

我在使用 JTDS 读取 SQL Server 2005 数据库中的 View 时遇到问题,并且在寻找解决方案时遇到了严重的问题。

查询只是选择 View 中的所有内容:

SELECT * FROM encounters_view WHERE patient_id = ?

此行抛出异常:

rset = selectAllEncountersByPatientId.executeQuery();

堆栈跟踪如下:

java.sql.SQLException: Error converting data type nvarchar to numeric.
at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:372)
at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2820)
at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2258)
at net.sourceforge.jtds.jdbc.TdsCore.isDataInResultSet(TdsCore.java:796)
at net.sourceforge.jtds.jdbc.JtdsResultSet.<init>(JtdsResultSet.java:134)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQLQuery(JtdsStatement.java:483)
at net.sourceforge.jtds.jdbc.JtdsPreparedStatement.executeQuery(JtdsPreparedStatement.java:776)
at package_name.ClassName.method(Db_query_class.java:91)
at package_name.ClassName.main(Main_class.java:36)

查看数据类型:

id (unique(numeric(16,0)),not null)
provId (uniqueid(numeric(16,0)),not null)
patId (uniqueid(numeric(16,0)),not null)
mrn (varchar(20),not null)
visitId (uniqueid(numeric(16,0)),not null)
dttm (datetime, null)
apptType (name(varchar(255)),null)
apptStatus (name(varchar(255)),null)
refProvId (uniqueid(numeric(16,0)),not null)
pay (name(varchar(255)),not null)
zip (char(10),not null)

如有任何帮助,我们将不胜感激。

最佳答案

这很可能是因为您正在加入不同数据类型的两列(一个 nvarchar 另一个数字)- 您的 nvarchar 可能包含包含不会转换为十进制字符的数字(例如 ',' 或 '. ').

关于java - (JTDS) java.sql.SQLException : Error converting data type nvarchar to numeric,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12862881/

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