gpt4 book ai didi

java - 在 jtable 中显示查询

转载 作者:行者123 更新时间:2023-11-30 22:09:50 25 4
gpt4 key购买 nike

你好,我正在为我的 Java 类做一个项目,简单来说,我必须做一个让你手动查询的程序,就像我放一个文本框示例“select * from table”并显示结果,第二问题是如果删除、更新或插入程序应该自动执行选择语句以显示结果。

public class InfoCd extends JFrame {

private JPanel contentPane;
private JTable table;
private JTextField textQuery;

/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
InfoCd frame = new InfoCd();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
Connection conn=null;

/**
* Create the frame.
*/
public InfoCd() {

conn=sqliteConnection.dbConnector();

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 753, 477);
contentPane = new JPanel();
contentPane.setBackground(SystemColor.activeCaption);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);

JButton btnHacerConsulta = new JButton("Hacer Consulta");
btnHacerConsulta.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
String query="'?'";
PreparedStatement pst=conn.prepareStatement(query);
pst.setString(1, textQuery.getText());
ResultSet rs=pst.executeQuery();
table.setModel(DbUtils.resultSetToTableModel(rs));
} catch (Exception e2) {
e2.printStackTrace();
}

}
});
btnHacerConsulta.setBounds(112, 388, 169, 39);
contentPane.add(btnHacerConsulta);

JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(0, 0, 737, 367);
contentPane.add(scrollPane);

table = new JTable();
scrollPane.setViewportView(table);

textQuery = new JTextField();
textQuery.setFont(new Font("Arial", Font.BOLD | Font.ITALIC, 11));
textQuery.setHorizontalAlignment(SwingConstants.CENTER);
textQuery.setText("Escribir Consulta Aqui");
textQuery.setToolTipText("");
textQuery.setBounds(422, 388, 270, 39);
contentPane.add(textQuery);
textQuery.setColumns(10);
}
}

最佳答案

通常 SQL 看起来像这样:

String query = "Select * from TableName";
Statement statement = connection.createStatement();
ResultSet rs = statement.executeQuery(query);

因此,如果您想通过文本字段中的查询动态执行此操作,您只需执行以下操作:

String query = textField.getText();
Statement statement = connection.createStatement();
ResultSet rs = statement.executeQuery(query);

因此,由用户在文本字段中键入正确的 SQL 查询。

阅读 SQL Basics 上的教程获取更多信息。

关于java - 在 jtable 中显示查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40457757/

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