java - 如何对数据库中的表进行排序

标签 java mysql database h2

我希望能够根据数量或名称对数据库中的表进行排序,但是我如何决定在什么情况下会发生什么?

下面是该表的代码。

public void tableupdate(JTable jTable1, String fill) {

    try {
        try {
            Class.forName("org.h2.Driver");
            Connection con = DriverManager.getConnection("jdbc:h2:file:D:/Inventory.db", "sa", "");

            Statement stat = con.createStatement();
            fill = "SELECT * FROM BOOKDESC  ";
            ResultSet rs = stat.executeQuery(fill);

            while (jTable1.getRowCount() > 0) {
                ((DefaultTableModel) jTable1.getModel()).removeRow(0);

            }
            int columns = rs.getMetaData().getColumnCount();
            while (rs.next()) {
                Object[] row = new Object[columns];
                for (int i = 1; i <= columns; i++) {
                    row[i - 1] = rs.getObject(i);

                }
                ((DefaultTableModel) jTable1.getModel()).insertRow(rs.getRow() - 1, row);

            }
            rs.close();
            stat.close();
            con.close();
        } catch (ClassNotFoundException e) {
            JOptionPane.showMessageDialog(null, e);
        }

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

}

最佳答案

MySQL 提供了一种在 SELECT 语句中对数据进行排序的方法,称为 ORDER BY。

发现用法here .

这样,您的代码就不必完成这项工作,因为您的 ResultSet 已经获得了排序的数据。

关于java - 如何对数据库中的表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60741721/

相关文章:

java - 使用 JApplet 绘制星星

php - 如何在不加载数据库的所有结果的情况下使用 zend paginate

database - 今天之前连接的 db2 force 应用程序

Java ArrayList 删除元素恢复浪费的空间?

java - 检测光标附近区域内的颜色

java - 关于曲线拟合和插值的推荐书籍?

MySQL:在 View 中选择?

mysql - 更新mysql中的查询与mssql中的结果不一样

mysql - 动态值的数据库结构

mysql - 如果表按日期排序,如何在 MySQL 上选择特定行之前的行?