如何使用Java FX纠正此错误?

问题描述 投票:0回答:1

我遇到以下错误:

错误:java.sql.SQLSyntaxErrorException:“字段列表”中的未知列“密码” ***和长文本错误

ISSUE1:当我尝试连接Java FX和MySQL数据库时,请帮助我解决此问题。

ISSUE2:时区也有问题

这是我的密码:

package sample;

import com.sun.org.apache.bcel.internal.generic.DCONST;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.DriverManager;
import java.sql.ResultSet;

public class DatabaseHandler extends Configs {
    Connection dbConnection;

    public Connection getDbConnection() throws ClassNotFoundException, SQLException {
        String connectionString = "jdbc:mysql://" + dbHost + ":"
                + dbPort + "/" + dbname + "? " + "useUnicode=true&serverTimezone=UTC&useSSL=true&verifyServerCertificate=false";

        Class.forName("com.mysql.cj.jdbc.Driver");

        dbConnection = DriverManager.getConnection(connectionString, dbUser, dbPass);

        return dbConnection;
    }

    public void SignUpUser(User user) {
        String insert = " INSERT INTO " + Const.USER_TABLE + "(" + Const.USER_FIRSTNAME + ","
                + Const.USER_LASTNAME + "," + Const.USER_LOCATION + ","
                + Const.USER_USERNAME + "," + Const.USER_PASSWORD + ","
                + Const.USER_GENDER + ")" + "VALUES(?,?,?,?,?,?)";

        try {
            PreparedStatement prSt = getDbConnection().prepareStatement(insert);
            prSt.setString(1, user.getFirstname());
            prSt.setString(2, user.getLastname());
            prSt.setString(3, user.getLocation());
            prSt.setString(4, user.getUsername());
            prSt.setString(5, user.getPassword());
            prSt.setString(6, user.getGender());

            prSt.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}


java mysql database-connection
1个回答
0
投票

您能否提供该错误的所有堆栈跟踪信息?但是显然,您的数据库中似乎没有名称为password的字段

© www.soinside.com 2019 - 2024. All rights reserved.