Sometimes it is unclear that all the values allowed for some parameters can be obtained by the following two methods:
1. directly enter the error value and let the error prompt
Copy codeThe Code is as follows:
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
It can be seen that all values allowed by _ db_block_cache_protect are TRUE, MEDIUM, LOW, FALSE.
The disadvantage is that 9i and earlier versions do not support this check.
2. Get through scripts
Cat a. SQL
Copy codeThe Code is as follows:
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 ('% & 123 ')
ORDER
Pvalid_par #,
Pvalid_default,
Ord,
Pvalid_Value
Run with sys user
SQL> @ a block
Obtain the possible values of all block-related parameters.