gpt4 book ai didi

java - 将 jtextbox 值和 jradiobutton 值插入数据库

转载 作者:行者123 更新时间:2023-12-01 20:52:13 25 4
gpt4 key购买 nike

我试图将文本框中的值插入数据库,但收到错误com.microsoft.sqlserver.jdbc.SQLServerException:字符串或二进制数据将被截断。我认为问题出在单选按钮上,但是当我尝试在数据库中插入值并从查询中删除单选按钮和性别时,我收到了相同的错误。

我尝试插入值名称:a,用户名:a,联系人:a,单选按钮[男性],仍然遇到相同的错误。我不知道我是如何收到此错误的。

create table temp (
id int IDENTITY(1,1) PRIMARY KEY,
name varchar(32) not null,
username varchar(32) not null,
contact varchar(32) not null,
gender int
);

btnSubmit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
try
{
int gender = 0;
Connection sqlCon = DB_con.getSQLConnection();
PreparedStatement ps = sqlCon.prepareStatement(
"insert into temp (name, username, contact, gender) values ( ?, ?, ?, ?)"
);
ps.setString(1, txtName.toString());
ps.setString(2, txtUserName.toString());
ps.setString(3, txtContact.toString());

gender = (rbtnMale.isSelected()) ? 1 :2;
System.out.println("value of gender " + gender );
ps.setInt(4, gender);
int i = ps.executeUpdate();
System.out.println("records inserted: "+i);
sqlCon.close();
}
catch(Exception e)
{
System.out.println(e.toString());
}
}
});

最佳答案

很可能是以下之一:

  • txtName.toString()
  • txtUserName.toString()
  • txtContact.toString()

...长度超过 32 个字符。为什么不在插入之前将它们记录在某处以便您可以看到?

您的代码片段中不清楚这些对象属于什么类。它们是否有可能是 JTextField 的默认 toString() 方法实现?如果是这样,请使用 getText(), not toString() .

关于java - 将 jtextbox 值和 jradiobutton 值插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43107645/

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