首页 文章

在一个查询中获取COLUMN_NAME和TABLESPACE_NAME

提问于
浏览
-2

在oracle中是否有任何视图,我可以在一个查询中获取COLUMN_NAME和TABLESPACE_NAME:

String selectSQL = "SELECT * FROM USER_TABLES WHERE table_name = '"+table+"' order by COLUMN_ID" ;
    try 
    {
        con = DBConne.getConnection();
        preparedStatement = con.prepareStatement(selectSQL);
        ResultSet rs = preparedStatement.executeQuery();
        //Tablespace = rs.getString("tablespace_name");
          while (rs.next()) {
                ClumnName.add(rs.getString("COLUMN_NAME"));
                ClumnType.add(rs.getString("DATA_TYPE"));
                ClumnType.add(rs.getString("DATA_LENGTH"));
                Tablespace = rs.getString("tablespace_name");

            }
    }catch{}

错误是:"Invalid column name"
我该怎么做 !

2 回答

  • 2

    试试这个 ..

    select a.TABLESPACE_NAME, b.TABLE_NAME, b.COLUMN_NAME from 
    ALL_ALL_TABLES a, ALL_TAB_COLUMNS b
    where a.TABLE_NAME=b.TABLE_NAME;
    

    TABLESPACE_NAME - >>包含表格的表空间的名称; null用于分区,临时和索引组织表 .

  • 0

    使用此查询

    SELECT * FROM USER_TABLES A,USER_TAB_COLUMNS B WHERE A.TABLE_NAME = B.TABLE_NAME
    

相关问题