首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在将数据插入表时获取“强制转换的无效字符值”错误。Java

问在将数据插入表时获取“强制转换的无效字符值”错误。Java
EN

Stack Overflow用户
提问于 2019-03-15 18:34:41
回答 1查看 860关注 0票数 0
代码语言:javascript
复制
try {               
                    Connection conn=DriverManager.getConnection("jdbc:ucanaccess://E:\\testing.accdb");
                    String sql="insert into Books (Book_ID,Book_Name,Subject_ID,Author) values (?,?,?,?) ";
                    PreparedStatement pst=conn.prepareStatement(sql);
                    pst.setString(1, textField_BN.getText());
                    pst.setString(2, textField_SID.getText());
                    pst.setString(3, textField_BID.getText());
                    pst.setString(4, textField_A.getText());
                    pst.executeUpdate();

                    JOptionPane.showMessageDialog(null, "Data Saved");

                } catch (Exception e) {
                    e.printStackTrace();
                }

我用Ucanaccess建立了一个连接,它成功并打印了表。但是,我尝试编写一个insert查询,该查询将把行输入到表中,这会给我带来错误。

UCAExc:4.0.4数据异常: net.ucanaccess.jdbc.UcanaccessPreparedStatement.setString(UcanaccessPreparedStatement.java:742)上强制转换的无效字符值

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-15 19:31:21

查看java类中的第742行,查看它设置的字段,然后验证您正在传递一个字符串。发生强制转换异常的原因是将无效的数据类型传递到准备好的语句中,该语句期待基于架构的不同数据类型。如果必须添加一些调试来打印正在设置的每个对象值,并检查模式,以确保在准备语句中设置的java数据类型匹配起来。

"invalid character value for cast" error on INSERT via UCanAccess

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55188813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档