VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
12
返回列表 发新帖
楼主: a2s1d2f1

在列名不知道的情况下,如何将其显示在网页中?

[复制链接]

0

主题

16

帖子

11.00

积分

新手上路

Rank: 1

积分
11.00
发表于 2021-3-4 17:30:01 | 显示全部楼层
select name,city,country from aa ;
如果是这样,怎么显示,前题是不知道是name,city,country,这三项。
====================
name,city,country这三个是name字符串里的啊
String[] name1=name.split(",");
这样
name1[0]就是name
name1[1]就是city
name1[2]就是country
回复

使用道具 举报

0

主题

23

帖子

13.00

积分

新手上路

Rank: 1

积分
13.00
发表于 2021-3-4 17:45:02 | 显示全部楼层
楼上,name相当于一个字符串化的数据了(类似于对象的toString()),反向解析往往是一个繁琐而糟糕的反模式(除非有精确的文本化协议的定义)。比如你直接name.split(",")并不能强制保证成功——考虑空格、引号。所以结构化属性参数才是最好的方法,可以强制客户指定列名的序列,比如最简单的数组。
回复

使用道具 举报

0

主题

11

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
发表于 2021-3-4 18:00:01 | 显示全部楼层
?        

getMetaData
ResultSetMetaData getMetaData()
throws SQLException检索此 ResultSet 对象的列的编号、类型和属性。

返回:
此 ResultSet 对象的列的描述
抛出:
SQLException - 如果发生数据库访问错误
------------------------------------


这是正解
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2021-3-4 18:15:01 | 显示全部楼层
重命名一下 可以吗?
select "+name+" as mydate1 from aa";
rs.getstring("mydate1")
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2021-3-4 18:30:01 | 显示全部楼层
ResultSet rs = stmt.executeQuery(sql);
ResultSetMetaData rsm = rs.getMetaData();
String[] cols = new String[rsm.getColumnCount()];
for (int i = 0; i < cols.length; i++)
        cols[i] = rsm.getColumnName(i + 1);
回复

使用道具 举报

1

主题

2

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2021-8-14 21:58:32 | 显示全部楼层
A little wired, could you change your demandes?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表