4个回答
展开全部
获得某表所有列的信息:
String sql = select * from tname;//tname为某一表名
Connection conn = ....;
Statement st = conn.createStatement();
ResultSet rs = st.rs = st.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
int colcount = rsmd.getColumnCount();//取得全部列数
for(int i=0;i<colcount;i++){
String colname = rsmd.getColumnName(i);//取得全部列名
}
以上为某表字段具体查询,如果是查询表的信息,如在mysql服务器上那样的查询结果的话,可以用一下代码:
ResultSet.executeQuery("show tables")可以的到所有的表信息。
ResultSet.executeQuery("describe tname")可以得到表的字段信息。//tname为表名
p.s :同样适用于jsp。
String sql = select * from tname;//tname为某一表名
Connection conn = ....;
Statement st = conn.createStatement();
ResultSet rs = st.rs = st.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
int colcount = rsmd.getColumnCount();//取得全部列数
for(int i=0;i<colcount;i++){
String colname = rsmd.getColumnName(i);//取得全部列名
}
以上为某表字段具体查询,如果是查询表的信息,如在mysql服务器上那样的查询结果的话,可以用一下代码:
ResultSet.executeQuery("show tables")可以的到所有的表信息。
ResultSet.executeQuery("describe tname")可以得到表的字段信息。//tname为表名
p.s :同样适用于jsp。
展开全部
这是我曾经做过的项目里面部分DB操作代码,看是否对你有帮助:
/** 数据库驱动 */
public String DB_driver = "com.mysql.jdbc.Driver";
/** 数据库位置 */
public String DB_URL = "jdbc:mysql://localhost:3306/";
/** 数据库名字 */
public String DB_name = "information_schema"
/** 数据库用户 */
public String DB_user = "root";
/** 数据库密码 */
public String DB_pswd = "123456";
/**
*初始化驱动器
*/
protected void initDriver() {
try {
Class.forName(DBDriverStr); //装载数据库驱动
Helper.logger.fine("数据库 驱动 加载成功");
} catch (ClassNotFoundException e) { //驱动加载失败
e.printStackTrace();
Helper.logger.severe("数据库驱动加载失败:\n" + e.toString());
}
}
/**
*新建一个数据库连接
*本方法不对外开发,只为本类服务
* @return Connection 一个数据库连接实例
*/
protected Connection getConnection() {
Connection connection = null;
try {
//以 DBUserNameStr,DBUserPswdStr 身份获取与数据库 DBURLStr 连接
connection =
DriverManager.getConnection(DBURLStr, DBUserNameStr, DBUserPswdStr);
//设置事务为非自动递交, 事务递交由上层调用完成
connection.setAutoCommit(false);
} catch (SQLException e) { //数据源查询失败
e.printStackTrace();
Helper.logger.severe("数据源加载失败:" + e.toString());
}
return connection;
}
获取到了与数据库的连接以后就很好办事了,只要做一些 SQL 查询了,借鉴一下一楼的代码:
//tables为 information_schema 数据库中记录表格信息的表
String sql = select * from tables";
Connection conn = getConnection();
Statement st = conn.createStatement();
ResultSet rs = st.rs = st.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
int colcount = rsmd.getColumnCount();//取得全部列数
/** 数据库驱动 */
public String DB_driver = "com.mysql.jdbc.Driver";
/** 数据库位置 */
public String DB_URL = "jdbc:mysql://localhost:3306/";
/** 数据库名字 */
public String DB_name = "information_schema"
/** 数据库用户 */
public String DB_user = "root";
/** 数据库密码 */
public String DB_pswd = "123456";
/**
*初始化驱动器
*/
protected void initDriver() {
try {
Class.forName(DBDriverStr); //装载数据库驱动
Helper.logger.fine("数据库 驱动 加载成功");
} catch (ClassNotFoundException e) { //驱动加载失败
e.printStackTrace();
Helper.logger.severe("数据库驱动加载失败:\n" + e.toString());
}
}
/**
*新建一个数据库连接
*本方法不对外开发,只为本类服务
* @return Connection 一个数据库连接实例
*/
protected Connection getConnection() {
Connection connection = null;
try {
//以 DBUserNameStr,DBUserPswdStr 身份获取与数据库 DBURLStr 连接
connection =
DriverManager.getConnection(DBURLStr, DBUserNameStr, DBUserPswdStr);
//设置事务为非自动递交, 事务递交由上层调用完成
connection.setAutoCommit(false);
} catch (SQLException e) { //数据源查询失败
e.printStackTrace();
Helper.logger.severe("数据源加载失败:" + e.toString());
}
return connection;
}
获取到了与数据库的连接以后就很好办事了,只要做一些 SQL 查询了,借鉴一下一楼的代码:
//tables为 information_schema 数据库中记录表格信息的表
String sql = select * from tables";
Connection conn = getConnection();
Statement st = conn.createStatement();
ResultSet rs = st.rs = st.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
int colcount = rsmd.getColumnCount();//取得全部列数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用元数据api,也在jdbc的包下面
===============================
视图如法炮制,java才不管你视不视图,视图不也是要返回结果集的吗?
===============================
视图如法炮制,java才不管你视不视图,视图不也是要返回结果集的吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
mysql中 有个information_schema的数据库 里面有个TABLES的表
这里面就包含了MYSQL 所有表的信息
至于表的字段具体信息我也不太清楚了
这里面就包含了MYSQL 所有表的信息
至于表的字段具体信息我也不太清楚了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |