Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1418524
  • 博文数量: 239
  • 博客积分: 5909
  • 博客等级: 大校
  • 技术积分: 2715
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-24 20:19
文章分类

全部博文(239)

文章存档

2014年(4)

2013年(22)

2012年(140)

2011年(14)

2010年(59)

我的朋友

分类: Oracle

2012-11-22 10:46:54

有时不清楚一些参数的所有允许设定的值,可以由以下两个方法获得

1.直接输入错的值,让error来提示
SQL>  alter system set "_db_block_cache_protect"=what scope=spfile;
 alter system set "_db_block_cache_protect"=what scope=spfile
*
ERROR at line 1:
ORA-00096: invalid value WHAT for parameter _db_block_cache_protect, must be
from among TRUE, MEDIUM, LOW, FALSE

由此可知_db_block_cache_protect所有允许的值是TRUE, MEDIUM, LOW, FALSE
缺点是9i及以前的版本不支持这种检查

2.通过脚本来获得

cat a.sql

点击(此处)折叠或打开

  1. COL pvalid_default HEAD DEFAULT FOR A7
  2. COL pvalid_value HEAD VALUE FOR A30
  3. COL pvalid_name HEAD PARAMETER FOR A50
  4. COL pvalid_par# HEAD PAR# FOR 99999

  5. BREAK ON pvalid_par# skip 1

  6. PROMPT Display valid values for multioption parameters matching "&1"...

  7. SELECT
  8. -- INST_ID,
  9.         PARNO_KSPVLD_VALUES pvalid_par#,
  10.         NAME_KSPVLD_VALUES pvalid_name,
  11.         ORDINAL_KSPVLD_VALUES ORD,
  12.         VALUE_KSPVLD_VALUES pvalid_value,
  13.         DECODE(ISDEFAULT_KSPVLD_VALUES, 'FALSE', '', 'DEFAULT' ) pvalid_default
  14. FROM
  15.         X$KSPVLD_VALUES
  16. WHERE
  17.         LOWER(NAME_KSPVLD_VALUES) LIKE LOWER('%&1%')
  18. ORDER BY
  19.         pvalid_par#,
  20.         pvalid_default,
  21.   ord,
  22.         pvalid_Value
  23. /
用sys用户执行

SQL> @a block

会将所有与block有关的参数的可能值获取。

这种方法的来源是 http://blog.tanelpoder.com/2008/08/13/script-display-valid-values-for-multioption-parameters-including-hidden-parameters/

阅读(2206) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~