要达到这个目的,是不是不能使用ADO?必须要使用OCI么?

解决方案 »

  1.   

    SELECT * FROM user_tab_columns WHERE TABLE_NAME='表名';
    表名区分大小写的!
      

  2.   

    select t.column_name,
           decode(t.data_type,'NUMBER','NUMBER('||to_char(t.data_precision)||','||to_char(t.data_scale)||')',
                              'DATE','DATE',
                              'CHAR','CHAR('||to_char(a.data_length)||')',
                              'VARCHAR2','VARCHAR2('||to_char(a.data_length)||')',
                              ... ...                                                     
    from user_tab_cols t where t.table_name = 'TABLENAME';
      

  3.   

    select t.column_name,
           decode(t.data_type,'NUMBER','NUMBER('||to_char(t.data_precision)||','||to_char(t.data_scale)||')',
                              'DATE','DATE',
                              'CHAR','CHAR('||to_char(t.data_length)||')',
                              'VARCHAR2','VARCHAR2('||to_char(t.data_length)||')',
                              ... ...                                                     
    from user_tab_cols t where t.table_name = 'TABLENAME';
      

  4.   


    谢谢!我已经说了我不能从系统表获得。我希望能够从结果集中自动获取,因为我要实现一个通用的结果集显示功能。
    也就是给你任何一个sql,你执行之后,把sql对应的查询结果自动显示在列表中。
      

  5.   

    用你的查询语句创建视图,然后通过数据字典获取字段信息,获取后再将视图drop掉