本文目录
- ResultSet怎么获取数据库中的最后一行记录的第一个字段
- ResultSetMetaData rsmd = rs.getMetaData()是什么意思
- ResultSetMetaData怎么获取主键
- JSP中ResultSet接收值问题
- java.sql.ResultSetMetaData.getColumnLabel和getColumnName的区别
- 怎么用java查数据库中表的列名
- 谁能详细的给我介绍下ResultSetMetaData下边的方法有哪些有什么用有例子最好
- resultsetmetadata rsmd = rs.getmetadata;是什么意思
ResultSet怎么获取数据库中的最后一行记录的第一个字段
获得ResultSet的记录个数:因为ResultSet没有方法可直接得到记录数,只有另想方法,可采用如下方法:Statement stmt = db.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);ResultSet rs = stmt.executeQuery(sql);rs.last();//移到最后一行int count = rs.getRow();rs.beforeFirst();//移到初始位置
ResultSetMetaData rsmd = rs.getMetaData()是什么意思
ResultSetMetaData rsmt=rs.getMetaData();得到结果集(rs)的结构,比如字段数、字段名等。使用rs.getMetaData().getTableName(1))就可以返回表名rs.getMetaData().getColumnCount()取得列数例子:ResultSet rs = stmt.executeQuery(“SELECT a, b, c FROM TABLE2“);//得到查询结果,一个数据集 ResultSetMetaData rsmd = rs.getMetaData(); int numberOfColumns = rsmd.getColumnCount(); //得到数据集的列数
ResultSetMetaData怎么获取主键
方法一:通过connection来获得 Java代码 :private String getIdName(Connection conn,String tableName){ String idName = ““; DatabaseMetaData metaData = null; try { metaData = conn.getMetaData(); ResultSet rs = metaData.getColumns(conn.getCatalog(), “%“, tableName, “%ID“); if(rs.next()){ idName = rs.getString(“COLUMN_NAME“); } } catch (Exception e) { logger.error(e); } return idName; } 方法二:通过结果集ResultSet获得 Java代码 :private String getIdName(ResultSet rs){ String idName = ““; ResultSetMetaData metaData = null; try { metaData = rs.getMetaData(); idName = metaData.getColumnName(1); } catch (Exception e) { logger.error(“查询表的主键名出错! “,e); } return idName; } 其中rs为select * from tableName;的结果集。
JSP中ResultSet接收值问题
//传入你的ResultSetpublic static void printRS(ResultSet rs) throws SQLException { //检索此 ResultSet 对象的列的编号、类型和属性。 ResultSetMetaData rsmd = rs.getMetaData(); //得到当前的列数int colCount = rsmd.getColumnCount(); while(rs.next()) { //while控制行数 for(int i = 1; i 《= colCount; i++ ) {//for循环控制列数 if(i 》 1) { System.out.print(“,“); } //得到当前列的列名 String name = rsmd.getColumnName(i); //得到当前列的值 String value = rs.getString(i); System.out.print(name + “=“ + value); } System.out.println(); } }
java.sql.ResultSetMetaData.getColumnLabel和getColumnName的区别
比如select birthdate 出生日期from emp那么在不同的jdbc实现中,可能有jdbc的getColumnLabel和getColumnName返回的都是:出生日期有的jdbc的getColumnLabel返回的是:出生日期,getColumnName返回的是birthdate-----------------------------------------------------------------------------------如果将ResultSet的结果映射到HashMap中,要使用getColumnLabel,而不要用getColumnName,这样可提高程序的健壮性理由:getColumnName返回的是sql语句中field的原始名字。getColumnLabel是field的SQL AS的值(Alias--别名)。比如:select a.name as name, a.description as description, b.description as relatedDescription from a,b where ...此时,getColumnName(3) == “description“;而getColumnLabel(3) == “relatedDescription“。API:getColumnLabelString getColumnLabel(int column) throws SQLExceptionGets the designated column’s suggested title for use in printouts and displays. The suggested title is usually specified by the SQL AS clause. If a SQL AS is not specified, the value returned from getColumnLabel will be the same as the value returned by the getColumnName method. Parameters:column - the first column is 1, the second is 2, ...Returns:the suggested column titleThrows:SQLException - if a database access error occurs getColumnNameString getColumnName(int column) throws SQLExceptionGet the designated column’s name. Parameters:column - the first column is 1, the second is 2, ...Returns:column nameThrows:SQLException - if a database access error occurs
怎么用java查数据库中表的列名
可以用下面的方式获取,把tableName换成你的表名,有些数据库也可以直接使用Sql查询表列名ResultSet resultSet = statement.executeQuery(“select * from tableName“);ResultSetMetaData resultSetMetaData = resultSet.getMetaData();for(int i=0; i《resultSetMetaData.getColumnCount(); i++) {System.out.print( resultSetMetaData.getColumnLabel(i) + “\t“ );System.out.print( resultSetMetaData.getColumnName(i) + “\t“ );System.out.println( resultSetMetaData.getColumnTypeName(i) );}
谁能详细的给我介绍下ResultSetMetaData下边的方法有哪些有什么用有例子最好
返回值类型 方法名称String getCatalogName(int column) 获取指定列的表目录名称。 String getColumnClassName(int column) 如果调用方法 ResultSet.getObject 从列中检索值,则返回构造其实例的 Java 类的完全限定名称。 int getColumnCount() 返回此 ResultSet 对象中的列数。 int getColumnDisplaySize(int column) 指示指定列的最大标准宽度,以字符为单位。 String getColumnLabel(int column) 获取用于打印输出和显示的指定列的建议标题。 String getColumnName(int column) 获取指定列的名称。 int getColumnType(int column) 检索指定列的 SQL 类型。 String getColumnTypeName(int column) 检索指定列的数据库特定的类型名称。 int getPrecision(int column) 获取指定列的小数位数。 int getScale(int column) 获取指定列的小数点右边的位数。 String getSchemaName(int column) 获取指定列的表模式。 String getTableName(int column) 获取指定列的名称。 boolean isAutoIncrement(int column) 指示是否自动为指定列进行编号,这样这些列仍然是只读的。 boolean isCaseSensitive(int column) 指示列的大小写是否有关系。 boolean isCurrency(int column) 指示指定的列是否是一个哈希代码值。 boolean isDefinitelyWritable(int column) 指示在指定的列上进行写操作是否明确可以获得成功。 int isNullable(int column) 指示指定列中的值是否可以为 null。 boolean isReadOnly(int column) 指示指定的列是否明确不可写入。 boolean isSearchable(int column) 指示是否可以在 where 子句中使用指定的列。 boolean isSigned(int column) 指示指定列中的值是否带正负号。 boolean isWritable(int column) 指示在指定的列上进行写操作是否可以获得成功。
resultsetmetadata rsmd = rs.getmetadata;是什么意思
ResultSetMetaData rsmt=rs.getMetaData();得到结果集(rs)的结构,比如字段数、字段名等。使用rs.getMetaData().getTableName(1))就可以返回表名rs.getMetaData().getColumnCount()取得列数例子:ResultSet rs = stmt.executeQuery(“SELECT a, b, c FROM TABLE2“);//得到查询结果,一个数据集 ResultSetMetaData rsmd = rs.getMetaData(); int numberOfColumns = rsmd.getColumnCount(); //得到数据集的列数