Oracle parameter可能值获取方法

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

1.直接输入错的值,让error来提示

<div class="codetitle"><a style="CURSOR: pointer" data="81345" class="copybut" id="copybut81345" onclick="doCopy('code81345')"> 代码如下:
<div class="codebody" id="code81345">
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,FALSE
缺点是9i及以前的版本不支持这种检查

2.通过脚本来获得


cat a.sql
<div class="codetitle"><a style="CURSOR: pointer" data="73059" class="copybut" id="copybut73059" onclick="doCopy('code73059')"> 代码如下:
<div class="codebody" id="code73059">
COL pvalid_default HEAD DEFAULT FOR A7
COL pvalid_value HEAD VALUE FOR A30
COL pvalid_name HEAD ParaMETER FOR A50
COL pvalid_par# HEAD PAR# FOR 99999
BREAK ON pvalid_par# skip 1
PROMPT display valid values for multioption parameters matching "&1"...
SELECT
-- INST_ID,
PARNO_KSPVLD_VALUES pvalid_par#,
NAME_KSPVLD_VALUES pvalid_name,
ORDINAL_KSPVLD_VALUES ORD,
VALUE_KSPVLD_VALUES pvalid_value,
DECODE(ISDEFAULT_KSPVLD_VALUES,'FALSE','','DEFAULT' ) pvalid_default
FROM
X$KSPVLD_VALUES
WHERE
LOWER(NAME_KSPVLD_VALUES) LIKE LOWER('%&1%')
ORDER BY
pvalid_par#,
pvalid_default,
ord,
pvalid_Value

用sys用户执行
sql> @a block
会将所有与block有关的参数的可能值获取

oracleparameter

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...