象oracle这样的数据库
数据库的基本信息都储存在字典档里
可以用来查询 
如table1
select * from all_tables where talbename='talbe1';
名字可能记错了 方法总的来说是这样

解决方案 »

  1.   

    不同数据库类型查询语句不同,sql server中为:
    rs = stmt.executeQuery("select name from sysobjects where name3D"待查table名");==============================
    在下所说,也许并非正确,请从建议的角度批判地吸收!
      

  2.   

    faint
    csdn工具还是bug很多阿
    =号居然成3D了
    select name from sysobjects where name="待查table名"==============================
    在下所说,也许并非正确,请从建议的角度批判地吸收!
      

  3.   

    有Interface DatabaseMetaData可用
      

  4.   

    在下所说的方法我知道,但是我现在要的是一个能够跨数据库的解决方案
    因为我现在做的产品的数据库支持Oracle,SqlServer,MySql三种,不是做特定项目
    请赐教
      

  5.   

    那你可以单独写个class阿
    首先判断对象数据库是什么类型的
    毕竟在不同数据库中,存储所有表名的数据字典不一样阿
    怎么可能就用一个语句能够针对所有类型的数据库?
    除非是sql code字串变量随着数据库类型的不同而改变

    ==============================
    在下所说,也许并非正确,请从建议的角度批判地吸收!
      

  6.   

    那你可以单独写个class阿
    首先判断对象数据库是什么类型的
    毕竟在不同数据库中,存储所有表名的数据字典不一样阿
    怎么可能就用一个语句能够针对所有类型的数据库?
    除非是sql code字串变量随着数据库类型的不同而改变
    晕==============================
    在下所说,也许并非正确,请从建议的角度批判地吸收!
      

  7.   

    to: alphazhao(绿色咖啡) 
    我要的是一个能够跨数据库的解决方案,不是一个statement.
    一句sql statement白痴也知道不可能的,哈哈:)
    那请赐教,如何去判断当前数据库是什么类型的,来确定各数据库的存储所有表名的数据字典呢?
    谢谢
    Thanks in advance
      

  8.   

    判断数据库是什么类型,最简单莫过于弄个配置文件了,在配置文件里面加个数据库类型的key就行,判断的时候读出来看看就行
    比如客户用的是oracle,你就在配置文件里面将这个key的值改为oracle不就得了?
    btw:既然你是跨越数据库的解决方案,那么连接数据库的时候是否也要针对不同数据库类型进行相应的判断?
    等同过来也可以阿
    ==============================
    在下所说,也许并非正确,请从建议的角度批判地吸收!
      

  9.   

    to:alphazhao(绿色咖啡) 
    说的也是哦写个db.properties不就可以了,哈哈:)