java 获取mysql 某个数据库中所有表及表的列的信息

如题获得表和字段信息.谢谢读取视图呢?... 如题
获得表和字段信息.谢谢
读取视图呢?
展开
 我来答
miniappt4c8wy7lfb0ir
推荐于2016-11-26 · TA获得超过295个赞
知道小有建树答主
回答量:184
采纳率:0%
帮助的人:97.6万
展开全部
获得某表所有列的信息:
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。
卫星3D看世界
2009-08-15 · TA获得超过909个赞
知道小有建树答主
回答量:461
采纳率:66%
帮助的人:166万
展开全部
这是我曾经做过的项目里面部分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();//取得全部列数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Dr_juio
2009-08-17 · TA获得超过812个赞
知道小有建树答主
回答量:1158
采纳率:0%
帮助的人:519万
展开全部
用元数据api,也在jdbc的包下面
===============================
视图如法炮制,java才不管你视不视图,视图不也是要返回结果集的吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
雪过了无痕
2009-08-14 · TA获得超过234个赞
知道小有建树答主
回答量:275
采纳率:0%
帮助的人:266万
展开全部
mysql中 有个information_schema的数据库 里面有个TABLES的表

这里面就包含了MYSQL 所有表的信息

至于表的字段具体信息我也不太清楚了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式