gpt4 book ai didi

java - 如何在 Java servlet 的插入查询中将字符串类型转换为二进制类型

转载 作者:太空宇宙 更新时间:2023-11-03 11:39:41 25 4
gpt4 key购买 nike

这里我将数据插入到 sql server 表中的一列数据类型是二进制类型的数据,它存储我正在使用

当我尝试传递数据时,它显示错误消息以及如何插入此消息

String ins="insert into Users(ID,Name,Password)     values(?,?,?)";

ps.setString(1,id);
ps.setString(2,Name);
ps.setString(3,password);

最佳答案

您需要将您的密码 String 对象转换为 byte[] 并使用 preparedStatement.setBytes 方法,如下所示:

byte[] passwordBytes = password.getBytes();
ps.setBytes(9,passwordBytes);

I am getting this error now:: com.microsoft.sqlserver.jdbc.SQLServerException: Conversion failed when converting the nvarchar value 'SuperUser' to data type int

您的代码存在的问题是您正在为所有数据类型使用preparedStatement.setString您需要使用 preparedStatement.setInt其他合适的方法(查看 API 的 here)根据数据库表的列设计。

此外,我强烈建议关闭finally block 中的preparestatement对象或者使用try with resources,否则你会用完资源。

关于java - 如何在 Java servlet 的插入查询中将字符串类型转换为二进制类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43045661/

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