元数据- DataBaseMetaData
- 元数据:数据库、表、列的定义信息。
- Connection.getDatabaseMetaData()
- DataBaseMetaData对象
-
getURL():返回一个String类对象,代表数据库的URL。
-
getUserName():返回连接当前数据库管理系统的用户名。
-
getDatabaseProductName():返回数据库的产品名称。
-
getDatabaseProductVersion():返回数据库的版本号。
-
getDriverName():返回驱动驱动程序的名称。
-
getDriverVersion():返回驱动程序的版本号。
-
isReadOnly():返回一个boolean值,指示数据库是否只允许读操作。
【实例】
DBManager_c3p0.java
package com.hbsi.util;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import com.mysql.jdbc.Statement;
public class DBManager_c3p0 {
private static ComboPooledDataSource ds = null;
static{
try{
//创建连接池
ds = new ComboPooledDataSource("mysql");
}catch(Exception e){
e.printStackTrace();
}
}
public static Connection getConnection() throws SQLException{
return ds.getConnection();
}
public static void closeDB(Connection con,PreparedStatement ps,ResultSet rs){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(ps!=null){
try {
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(con!=null){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
DingYiMessage.java
package com.hbsi.yuan;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.SQLException;
import com.hbsi.util.DBManager_c3p0;
public class DingYiMessage {
/**
* 数据库元数据
*/
public static void main(String[] args) {
Connection conn = null;
try {
//获取链接
conn = DBManager_c3p0.getConnection();
//获取元数据
DatabaseMetaData meta = (DatabaseMetaData) conn.getMetaData();
//获取名称
System.out.println(meta.getDatabaseProductName());
//获取URL
System.out.println(meta.getURL());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
DBManager_c3p0.closeDB(conn, null, null);
}
}
}
元数据- ParameterMetaData
- PreparedStatement . getParameterMetaData()
- 获得代表PreparedStatement元数据的ParameterMetaData对象。
- Select * from user where name=? And password=?
- ParameterMetaData对象
-
getParameterCount() 获得指定参数的个数
-
getParameterType(int?param) 获得指定参数的sql类型
CanShu.java
package com.hbsi.yuan;
import java.sql.Connection;
import java.sql.ParameterMetaData;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import com.hbsi.util.DBManager_c3p0;
public class CanShu {
/**
* 参数的元数据
*/
public static void main(String[] args) {
Connection conn = null;
PreparedStatement st = null;
try {
conn = DBManager_c3p0.getConnection();
String sql ="select * from admin where name=? and password=?";
st = conn.prepareStatement(sql);
//几个参数
ParameterMetaData pmeta = st.getParameterMetaData();
System.out.println(pmeta.getParameterCount());
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
DBManager_c3p0.closeDB(conn, null, null);
}
}
}
Tip:元数据- ResultSetMetaData
- ResultSet. getMetaData()
- 获得代表ResultSet对象元数据的ResultSetMetaData对象。
- ResultSetMetaData对象
-
getColumnCount() 返回resultset对象的列数
-
getColumnName(int?column) 获得指定列的名称
-
?getColumnTypeName(int?column)获得指定列的类型
JieGuoJi.java
package com.hbsi.yuan;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import com.hbsi.util.DBManager_c3p0;
public class JieGuoJi {
/**
* 结果集元数据
*/
public static void main(String[] args) {
Connection conn = null;
PreparedStatement st = null;
ResultSet rs = null;
try {
conn = DBManager_c3p0.getConnection();
String sql ="select * from admin";
st = conn.prepareStatement(sql);
rs = st.executeQuery();
ResultSetMetaData rmeta = rs.getMetaData();
//有几列
System.out.println(rmeta.getColumnCount());
System.out.println(rmeta.getColumnName(1));
System.out.println(rmeta.getColumnName(2));
System.out.println(rmeta.getColumnName(3));
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
DBManager_c3p0.closeDB(conn, null, null);
}
}
}
分享到:
相关推荐
Web__JSON数据.mp4
通过串口读取颜色传感器数据,并通过web端显示。
web服务调用,用于与其他数据库对接,上传数据到数据库里面,也可以从数据库服务器里获取数据。
基于WEB的_数据结构_在线学习平台的设计与实现
https://github.com/explosion/spacy-models/releases/download/zh_core_web_sm-2.3.0/zh_core_web_sm-2.3.0.tar.gz 下载太慢,方面下载
PHP和MySQL_Web开发_原书第4版_
PHP和MySQL Web开发_中文PHP和MySQL Web开发_中文PHP和MySQL Web开发_中文PHP和MySQL Web开发_中文PHP和MySQL Web开发_中文PHP和MySQL Web开发_中文
WebDeploy不仅仅让你发布文件—还可以部署数据库结构/数据,运行变更的数据库脚本,设置安全访问控制列表等等。所有这些部署步骤都可以用VisualStudio自动完成。 Web部署工具可简化IISweb服务器、Web应用程序和网站...
web-app_2_4.xsd
OpenERP 5.0.14 WEB源码 OpenERP(08年5月前称之为TinyERP)是一个ERP/CRM系统。 它使用Python语言开发,数据库采用开源的PostgreSQL,系统以GNU GPL开 源协议发布。 系统提供较灵活的模块架构,常用模块包括:采购...
读取数据库元数据得到表并用web界面进行管理。
点聚WebOffice在线打开编辑office java的demo和演示地址一样展现的程序是一样的 地址为点聚官方网页,如果打不开在google搜索 演示地址:http://o.dianju.cn:9230/WebOffice/
web mining_xml web日志挖掘
介绍数据挖掘中的web挖掘,基本含义,策略及步骤
互联网时代的数据安全与个人隐私受到前所未有的挑战,各种新奇的攻击技术层出不穷。如何才能更好地保护我们的数据?《白帽子讲Web安全》将带你走进Web安全的世界,让你了解Web安全的方方面面。
实现基于Web的地理信息系统的信息获取、存储、修改、检索、显示空间定位数据功能
塞班系统pc端软件。用于数据传递、备份,适用于早期的诺基亚手机
Umbraco是一个开放源码的CMS内容管理系统,基于asp.net建立,使用mssql进行存储数据。使用Umbraco,设计师能创造出有效的XHTML标记模板和开发人员可以创建任何基于.Net的模块。主要特点包括: •漂亮,友好的用户...
spacy 英文库 en_core_web_md-2.2.0. spacy是一个强大的NLP数据处理工具,它使用二步的安装步骤:先安装spacy,再安装对应的语言包。
WebOffice控件weboffice_v6.0.4.4