2016-03-08 39 views
0

我已经说明了使用eclipse ide与java连接mysql并添加一些记录但结果不正确。 当我显示表的列表时,表字段没有显示,在这里我得到了数据库名称。JDBC列中的表列标题不正确

enter image description here

out.println("<body><tt><table border=1 width=90%><tr>"); 

try { 

    ResultSet rs = com.db.Admin.getData(); 
    ResultSetMetaData mdata = rs.getMetaData(); 
    int NOC = mdata.getColumnCount(); 

    for (int i = 1; i <= NOC; i++) { 
     out.println("<th>" + mdata.getCatalogName(i)); 

    } 

    while (rs.next()) { 
     out.println("<tr>"); 
     for (int i = 1; i <= NOC; i++) 
      out.print("<td>" + rs.getString(i)); 
     out.println("</tr>"); 
    } 

} catch (Exception e) { 
    // TODO: handle exception 
    out.print(e.toString()); 
} 

回答

2

the javadoc

获取指定列的表目录名称。

你可能想getColumnLabel()

获取指定列的建议标题在打印输出和显示。建议的标题通常由SQL AS子句指定。如果未指定SQL AS,则从getColumnLabel返回的值将与由getColumnName方法返回的值相同。

当您阅读文档时,一切都变得更简单。

+0

谢谢。它的工作 –

0

你的while循环看起来像这样。您已错过添加</td>

while (rs.next()) { 
     out.println("<tr>"); 
     for (int i = 1; i <= NOC; i++) 
      out.print("<td>" + rs.getString(i)); 
      out.print("</td>"); // You have missed to add it 
     out.println("</tr>"); 
    }