如何找出用于在oracle sql中创建视图的文本,尤其是如何找出可隐藏哪些列?
select view_name, text from all_views where viewname = 'XYZ';
只会给我前几个字
sql developer有一个标签,我只是想知道是否有办法从sqlplus的命令行执行此操作。
答案 0 :(得分:2)
默认情况下,SQL * Plus仅显示long和clob列的前80个字符。您可以set long 32767
(或其他一些大数字; 30000似乎很常见,我认为来自旧版本,其中限制为32K且更容易输入,但现在是2M )并重新发出您的查询。
您还可以使用the dbms_metadata
package获取视图DDL,如果它是您的视图(在您的架构中)或您具有select catalog
角色。
select dbms_metadata.get_ddl('VIEW', 'XYZ')
您需要set long
才能显示有用的输出量;如果模式不在您的模式中,请使用第三个参数指定模式。