ResultSetMetaData和DatabaseMetaData实现数据库中属性,属性值,属性所赋值的获取等
----------------------------------------------
有些类下面代码中有;
public class Test1 {
TestDAO t=new TestDAO();
/*
* ResultSetMetaData:描述结果集里的元数据。
* 可以得到结果集里的基本信息:结果集有哪些列,列名,列别名;
* 结合反射可以得到通用的查询方法
* */
@Test
public void testResultSetMetaData() throws Exception{
Connection connection=null;
PreparedStatement preparedStatement=null;
ResultSet resultSet=null;
try {
String sql="select id,name,email,birth from customer ";
connection=t.getConnection();
preparedStatement=connection.prepareStatement(sql);
resultSet=preparedStatement.executeQuery();
ResultSetMetaData rsmd=(ResultSetMetaData) resultSet.getMetaData();
//得到列的个数
int n=rsmd.getColumnCount();
System.out.println(n);
for(int i=0;i<n;i++){
//得到列名
String columnname=rsmd.getColumnName(i);
//获取到列的别名
String columnLabel=rsmd.getColumnLabel(i);
//得到列的值
Object columnValues=resultSet.getObject(columnLabel);
System.out.println(columnname+"--"+columnLabel+":"+columnValues);
}
} catch (Exception e) {
e.printStackTrace();
}finally {
t.close(connection, preparedStatement, resultSet);
}
}
/*
* DatabaseMetaData对象是在Connection对象上获取的,
* DatabaseMetaData类中提供了很多方法可以获得数据源的信息
* 了解
* */
public void testDatabaseMetaData() throws Exception{
Connection connection=null;
ResultSet resultSet =null;
try {
connection=t.getConnection();
DatabaseMetaData data=connection.getMetaData();
//可以得到数据库的一些基本信息
//得到数据库的版本号
int version=data.getDatabaseMajorVersion();
System.out.println(version);
//得到连接数据库的用户名
String user=data.getUserName();
System.out.println(user);
//得到mysql中有哪些数据库
resultSet=data.getCatalogs();
while(resultSet.next()){
System.err.println(resultSet.getString(1));
}
} catch (Exception e) {
e.printStackTrace();
}finally {
t.close(connection, null, resultSet);
}
}
}
ResultSetMetaData和DatabaseMetaData实现数据库中属性,属性值,属性所赋值的获取等的更多相关文章
- MVC下 把数据库中的byte[]值保存成图片,并显示在view页面
MVC下 把数据库中的byte[]值转成图片,并显示在view页面 controller中的action方法 //显示图片[AllowAnonymous]public ActionResult Sho ...
- MySQL数据库中tinyint字段值为1,读取出来为true的问题
原文:https://blog.csdn.net/shuyou612/article/details/46788475 MySQL数据库中tinyint字段值为1,读取出来为true的问题 今天在 ...
- sql server 数据库中明明有值但是查询怎么都查不到值
产生原因是因为编码问题 数据库是英文版 但是数据库中数据又是中文的 所以查询中文时需要加上N select * from customer where Username=N'张三'
- ContactsContract中涉及数据库中的一些列属性值【Written By KillerLegend】
ContactsContract.Data http://developer.android.com/reference/android/provider/ContactsContract.Dat ...
- 获取PostgreSQL数据库中得JSON值
在PostgreSQL数据库中有一列为JSON,要获取JSON中得数据可以用下面sql: select orderno as OrderNo ,amount as Amount ,ordertime ...
- 查找数据库中重复的值的数据,having的使用,count(1),sum等聚会函数
通过having代替where来使用count(1),sum()等函数.譬如如下数据id value1 21 32 33 53 6 可以写个语句统计value的分组 在这里,可以省略前面的sum(va ...
- input标签元素,value属性取值问题,赋值
验证val:<input type="text" id="id" name="name" value="空值"&g ...
- How to: Calculate a Property Value Based on Values from a Detail Collection 如何:基于详细信息集合中的值计算属性值
This topic describes how to implement a business class, so that one of its properties is calculated ...
- DataGridView设置不自动显示数据库中未绑定的列
项目中将从数据库查出来的数据绑定到DataGridView,但是不想显示所有的字段.此功能可以通过sql语句控制查出来的字段数目,但是DataGridView有属性可以控制不显示未绑定的数据,从UI层 ...
随机推荐
- jquery 操作select
jQuery("#select_id").change(function(){}); // 1.为Select添加事件,当选择其中一项时触发 var checkValue = jQ ...
- IntelliJ IDEA 显示行号方法
设置方法如下: File->Settings->Editor->General->Appearence->Show Line Number
- Java知多少(19)访问修饰符(访问控制符)
Java 通过修饰符来控制类.属性和方法的访问权限和其他功能,通常放在语句的最前端.例如: 1 public class className { 2 // body of class 3 } 4 pr ...
- tableview的cell点击和取消
#pragma mark - 选择cell: - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPa ...
- 几个PostgreSQL数据库操作总结
创建表 语法:如下 create table table_name (column_name column_type(parametes)options,…); 注意: ...
- JAVA JDBC连接 SQLServer2012
连接数据库的java测试代码 import java.sql.*; public class ConManager { final static String cfn = "com.micr ...
- 2-sat 输出任意一组可行解&拓扑排序+缩点 poj3683
Priest John's Busiest Day Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 8170 Accept ...
- jquery 实现ajax 上传文件的功能(使用插件 ajaxfileupload)
js文件的下载地址 : http://files.cnblogs.com/wangqc/ajaxfileupload.js 页面代码: <html> <!-- 引入相关的js文 ...
- Android -- 自定义View小Demo,关于Path类的使用(一)
1,在我们知道自定义view中onDraw()方法是用于绘制图形的,而Path类则是其中的一个重要的类,如下图效果: 代码也没有什么难度,直接贴出来吧 @Override protected void ...
- JavaScript的函数和事件(转)
一.默认函数 JavaScript提供了一些默认的函数 编码函数escape():将非字母.数字字符转换成ASCII码 译码函数unescape():将ASCII码转换成字母.数字字符 求值函数eva ...