gpt4 book ai didi

java - 从数据库创建 JTable

转载 作者:行者123 更新时间:2023-12-01 23:28:51 24 4
gpt4 key购买 nike

我正在尝试在我的库存系统中生成 JTable,并且当用户单击“查看账单”按钮 Image of my Billing Form 时,我想将数据库表中的记录显示到 JTable 中。 .

enter image description here

数据库结构

Bill_Master

  1. Bill_Id(主键 INT ):-存储账单编号
  2. Bill_Date(日期):存储帐单日期
  3. Customer_Name ( VARCHAR(50)):客户名称
  4. Total_amt (NUMBER(6)):账单总金额
  5. Cash_Disc(数字(2)):折扣
  6. Grand_Total(Number(6)):总计(总计-离散)
  7. UID(VARCHAR(10)) 存储账单生成者。(员工 ID)

    账单详细信息

  8. Bill_Detailid(INT PRIMARY KEY) 1 号详细账单
  9. Bill_Id(Bill_Master 的外键)
  10. Item_Id(库存外键)
  11. 数量(INT)
  12. 费率(数字(5))
  13. 总计(数量(5))

我想在用户使用查询单击“查看账单”按钮时显示详细账单

从 Bill_Master Inner join Bill_Details 中选择 * Bill_Master.Bill_Id=Bill_Details.Bill_Id。

数据库连接类型:ODBC请帮忙生成表格。

最佳答案

您可以从 ResultSet 中获取数据并使用 vector 将表的每一行添加到 DefaultTableModel 中。

像下面的例子:

try {
ResultSetMetaData rm = rs.getMetaData();
int j = rm.getColumnCount();
JTable table=new JTable();
int rowCount = table.getRowCount();
DefaultTableModel model = (DefaultTableModel) table.getModel();
Vector v = null;
if (rowCount == 0) {
while (rs.next()) {
v = new Vector();

for (int i = 1; i <= j; i++) {
String type = rm.getColumnTypeName(i);
// System.out.println(type);
switch (type) {
case "FLOAT":
v.add(rs.getFloat(i));
break;
case "COUNTER":
v.add(rs.getInt(i));
break;
case "VARCHAR":
v.add(rs.getString(i));
break;
case "INTEGER":
v.add(rs.getInt(i));
break;
case "DATETIME":
v.add(rs.getString(i));
break;
case "MEDIUMINT":
v.add(rs.getInt(i));
break;
case "LONGBLOB":
v.add(rs.getTime(i));
break;
default:
v.add(rs.getString(i));
}
}
model.addRow(v);
}

这里的模型是您必须在其上添加行的表的 DefaultTableModel。你明白我的意思吗?或者有什么疑问。?

关于java - 从数据库创建 JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19629198/

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