gpt4 book ai didi

JAVA GUI - 从 MYSQL 获取并显示数据

转载 作者:行者123 更新时间:2023-11-29 18:08:00 25 4
gpt4 key购买 nike

我正在开发一个可以访问 MySQL 的 GUI 应用程序。当用户在 JTextField 'VendorID' 中输入一些数据时,我希望在数据库中搜索它,找到包含信息的正确行并单独显示其他 JtextField 中的所有列。实际上我希望这些数据显示在 JLabel 中但不成功,所以现在尝试使用 JtextFields。感谢您的任何帮助。

public void findVendor() {

String vatEntered = vendorID.getText();


try
{
String myDriver = "com.mysql.jdbc.Driver";
String myUrl = "jdbc:mysql://localhost:3306/masterdata_db?autoReconnect=true&useSSL=false";
Class.forName(myDriver);
Connection conn = DriverManager.getConnection(myUrl, "root", "");

Statement st = conn.createStatement();


String check = "SELECT * FROM vendorcreation WHERE VAT = 'vatEntered' ";
ResultSet resultSet = st.executeQuery(check);

boolean status = true;
if(resultSet.next()==status){

nameSelected.setText(resultSet.getString(1));
adressSelected.setText(resultSet.getString(2));
countrySelected.setText(resultSet.getString(3));
vatSelected.setText(resultSet.getString(4));
ptermsSelected.setText(resultSet.getString(5));

conn.close();

}

else {

JOptionPane.showMessageDialog(null, "NO DATA FOUND! FIRST YOU MUST CREATE IT", "Inane error",JOptionPane.ERROR_MESSAGE);
dispose();
new CreateVendor().setVisible(true);
}


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


}

最佳答案

据我了解,您在执行该语句时遇到问题?您需要按如下方式设置语句:

String check = "SELECT * FROM vendorcreation WHERE VAT = " +vatEntered ;

但最好使用准备好的语句。

String check = "SELECT * FROM vendorcreation WHERE VAT = ?";
PreparedStatement st = conn.prepareStatement(check);
st.setString(1, vatEntered);
ResultSet resultSet = st.executeQuery();

对于数据分类,顺序似乎取决于列在数据库中的顺序。您还可以通过更改语句来手动设置结果:

String check = "SELECT (column1, column2) FROM vendorcreation WHERE VAT = ?"//etc

其中resultSet.getString(1); 是来自column1 的数据。

关于JAVA GUI - 从 MYSQL 获取并显示数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47662555/

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