oracle查询字段有list,java读取oracle表字段信息存到列表(LIST)中

今天在研究如何将oracle表字段的信息存到列表数组中,做了一点实验,是在java1.5下,用myeclips做的,代码如下:

public static List> gocilist(Connection conn,String table)

{

ResultSet rs = null;

Statement stmt=null;

//Connection conn = null;

String sqlm="select COLUMN_NAME,DATA_TYPE,DATA_LENGTH,DATA_PRECISION,DATA_SCALE,NULLABLE,COLUMN_ID from user_tab_columns where table_name =UPPER('"+table+"')";

List> fv1 = new ArrayList>();

Map fmap = new HashMap();

try{

//     conn = dbcon.dbconn();

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);

rs= stmt.executeQuery(sqlm);

while(rs.next()){

fmap = new HashMap();

fmap.put("COLUMN_NAME", rs.getString("COLUMN_NAME"));//获取字段名

fmap.put("DATA_TYPE",rs.getString("DATA_TYPE"));    //获取数据类型

fmap.put("DATA_LENGTH",rs.getString("DATA_LENGTH"));//获取数据长度

if(rs.getString("DATA_PRECISION") == null )

{

fmap.put("DATA_PRECISION","");

}

else

fmap.put("DATA_PRECISION",rs.getString("DATA_PRECISION"));//获取数据长度

if(rs.getString("DATA_SCALE") == null)

{

fmap.put("DATA_SCALE","");

}

else

fmap.put("DATA_SCALE",rs.getString("DATA_SCALE"));//获取数据精度

fmap.put("NULLABLE",rs.getString("NULLABLE"));    //获取是否为空

fmap.put("COLUMN_ID",rs.getString("COLUMN_ID"));    //字段序号

fv1.add(fmap);

}

conn.close();

}catch (Exception e) {

e.printStackTrace();  // TODO: handle exception

}

return fv1;

}

测试语句如下:

fcl=tablist.gocilist("SURVEY");      while(i1 < fcl.size())      {       System.out.println("COLUMN_NAME=="+fcl.get(i1).get("COLUMN_NAME"));       System.out.println("DATA_TYPE=="+fcl.get(i1).get("DATA_TYPE"));       System.out.println("DATA_LENGTH=="+fcl.get(i1).get("DATA_LENGTH"));       System.out.println("COLUMN_ID=="+fcl.get(i1).get("COLUMN_ID"));       i1=i1+1;      }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值