gpt4 book ai didi

java - 插入查询不起作用

转载 作者:行者123 更新时间:2023-11-29 10:15:33 25 4
gpt4 key购买 nike

我遇到一个问题,我认为 INSERT 语句是错误的,因为我不断收到“SQL 错误”。每次我执行 UPDATE 语句时,它都工作得很好。我似乎找不到查询有什么问题。

我的数据库表:emenu_user有变量id、用户名、密码、电子邮件、联系人和食物。其中所有内容均为 VARCHAR(目前)。

 public void Connection(){

try{
Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/emenu?zeroDateTimeBehavior=convertToNull","root","");
if(connection!=null){
System.out.println("Database connected");
}else {System.out.println("Database NOT connected");}


String name=username_field.getText();
String pass=password_field.getText();
String email=email_field.getText();
String contact=contact_field.getText();

String query="INSERT INTO emenu_user (username,password,email,contact) VALUES (?,?,?,?)";
PreparedStatement statement = connection.prepareStatement(query);
statement.setString(1,name);
statement.setString(2,pass);
statement.setString(3,email);
statement.setString(4,contact);


int set=statement.executeUpdate();

if(set>0)
{
JOptionPane.showMessageDialog(null,"Data Saved");
homepageMenu homepageMenu= new homepageMenu();
homepageMenu.setVisible(true);
dispose();
}
else
{
JOptionPane.showMessageDialog(null,"ERROR");
}


} catch(SQLException e){
JOptionPane.showMessageDialog(null,"SQL FAILED");
}

}

最佳答案

您需要将字段 food 设置为 null

ALTER TABLE `emenu_user` ALTER `food` SET DEFAULT NULL

或者在插入时提供一些值

String query="INSERT INTO emenu_user (username,password,email,contact, food) VALUES (?,?,?,?,?)";
PreparedStatement statement = connection.prepareStatement(query);
statement.setString(1,name);
statement.setString(2,pass);
statement.setString(3,email);
statement.setString(4,contact);
statement.setString(5,[SOME_VALUE]);

关于java - 插入查询不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50170426/

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