<%@ page contentType="text/html; charset=gb2312" %><%@ page language="java" %><%@ page import="com.mysql.jdbc.Driver" %><%@ page import="java.sql.*" %><%//驱动程序名String driverName="com.mysql.jdbc.Driver";//数据库用户名String userName="root";//密码String userPasswd="54lijing";//数据库名String dbName="personmanager";//表名String tableName="person1";//联结字符串String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;Class.forName("com.mysql.jdbc.Driver").newInstance();Connection connection=DriverManager.getConnection(url);Statement statement = connection.createStatement();String sql="SELECT * FROM "+tableName;ResultSet rs = statement.executeQuery(sql);//获得数据结果集合ResultSetMetaData rmeta = rs.getMetaData();//确定数据集的列数,亦字段数int numColumns=rmeta.getColumnCount();// 输出每一个数据值out.print("id");out.print("|");out.print("name");
out.print("|");out.print("birth");
out.print("|");out.print("sex");
out.print("|");out.print("address");out.print("<br>");while(rs.next()) {out.print(rs.getString(0)+" ");out.print("|");out.print(rs.getString(2));
out.print("|");out.print(rs.getString(3));
out.print("|");out.print(rs.getString(4));
out.print("|");out.print(rs.getString(5));out.print("<br>");}out.print("<br>");out.print("数据库操作成功,恭喜你");rs.close();statement.close();connection.close();%>
结果显示:
id|name|birth|sex|address
1 |lijing
2 |liufei
3 |liaoliangping
4 |jingyuzhu
5 |wanglei数据库操作成功,恭喜你
为什么后面3个内容没有啊?
本人新手,请高人指点下,谢谢。
另外:ResultSet rs = statement.executeQuery(sql); ResultSetMetaData rmeta = rs.getMetaData(); int numColumns=rmeta.getColumnCount();
得到的3个值该怎么用啊?
out.print("|");out.print("birth");
out.print("|");out.print("sex");
out.print("|");out.print("address");out.print("<br>");while(rs.next()) {out.print(rs.getString(0)+" ");out.print("|");out.print(rs.getString(2));
out.print("|");out.print(rs.getString(3));
out.print("|");out.print(rs.getString(4));
out.print("|");out.print(rs.getString(5));out.print("<br>");}out.print("<br>");out.print("数据库操作成功,恭喜你");rs.close();statement.close();connection.close();%>
结果显示:
id|name|birth|sex|address
1 |lijing
2 |liufei
3 |liaoliangping
4 |jingyuzhu
5 |wanglei数据库操作成功,恭喜你
为什么后面3个内容没有啊?
本人新手,请高人指点下,谢谢。
另外:ResultSet rs = statement.executeQuery(sql); ResultSetMetaData rmeta = rs.getMetaData(); int numColumns=rmeta.getColumnCount();
得到的3个值该怎么用啊?
解决方案 »
- 新手问题:为什么书上的【阶乘的递归】方法中只有if没有else?
- 求救?Exception in thread "main" java.lang.UnsupportedClassVersionError:
- java里,如何让图形颜色变幻
- 后缀名是.asf的视频文件怎么播放啊?
- 关于 .jar 文件的解包问题
- 我想问一个,java.long.object的clone()和isequal()是如何实现的,
- *********Jtable的某一格被选中后,背景色会变,请问这个怎么做?************
- 找不到符号~~ 求解!!!
- 请问哪里可以下载JBuilder 5企业版。想送分!
- 问个问题 java 异步调用webservice
- java里面如何写正则表达式
- 随机变格子的颜色… …
应该是从1开始的吧.不是0吧
然后检查你的getString()方法
第一,先查看你的数据库里后边对应的列有没有值,第二,如果确实有值,看看这几列的数据类型是什么类型,你全部用了rs.getString(x),而对应的列如果不是varchar()类型,则用getString()是得不到的.
2.
ResultSet rs = statement.executeQuery(sql); //说的通俗点,rs里存放这从数据库里查询到的值的集合,也可以想象成一张小的表
ResultSetMetaData rmeta = rs.getMetaData(); //得到ResultSetMetaData的实例,ResultSetMetaData可以得到关于 ResultSet对象中列的类型和属性信息,比如说 ResulltSet对象里的某列的数据类型,名称,等.
int numColumns=rmeta.getColumnCount(); // 得到 ResultSet 对象中的列数,也就是说你的sql="SELECT * FROM "+tableName;这句查询出来的ResultSet对象有几列.这样说你不知道你能不能明白.
还有就是,对于连接与查询,也最好用方法,分开来写吧!这样的话,思路清晰呀!这是建议啦!你的问题,上的LZ应该可以解决了吧!