Paquete DBMS_MAX_STRING_SIZE
El paquete DBMS_MAX_STRING_SIZE proporciona una interfaz para comprobar y cambiar el valor del parámetro de inicialización DBMS_MAX_STRING_SIZE.
- Función CHECK_MAX_STRING_SIZE
Esta función comprueba si el parámetroMAX_STRING_SIZEse puede actualizar a un valor determinado y devuelve una lista de violaciones que evitarían que el parámetro se actualice. - Procedimiento MODIFY_MAX_STRING_SIZE
Este procedimiento actualiza el valor del parámetroMAX_STRING_SIZEa un valor determinado.
Función CHECK_MAX_STRING_SIZE
Esta función comprueba si el parámetro MAX_STRING_SIZE se puede actualizar a un valor determinado y devuelve una lista de violaciones que impedirían que el parámetro se actualizara.
Sintaxis
DBMS_MAX_STRING_SIZE.CHECK_MAX_STRING_SIZE(
new_value IN VARCHAR2)
RETURN DBMS_MAX_STRING_SIZE_TBL;Parámetros
| Parámetro | Descripción |
|---|---|
|
|
Especifica el nuevo valor de parámetro |
Notas de uso
Si la lista de devolución está vacía, no hay violaciones y se puede realizar la actualización MAX_STRING_SIZE.
Ejemplo
SELECT * FROM TABLE(DBMS_MAX_STRING_SIZE.CHECK_MAX_STRING_SIZE('STANDARD'));
TYPE OBJECT_OWNER OBJECT_NAME COLUMN_NAME REASON
------ ------------ ----------- -------------- ---------------------------------------------
COLUMN ADMIN SALES CUST_NOTES Physical column exceeds STANDARD length limit
1 rows selected.
Tema principal: Paquete DBMS_MAX_STRING_SIZE
MODIFY_MAX_STRING_SIZE Procedimiento
Este procedimiento actualiza el valor del parámetro MAX_STRING_SIZE a un valor determinado.
Sintaxis
DBMS_MAX_STRING_SIZE.MODIFY_MAX_STRING_SIZE(
new_value IN VARCHAR2);
Donde: user_account es el nombre de la cuenta de usuario (nombre de esquema).
Parámetros
| Parámetro | Descripción |
|---|---|
|
|
Especifica el nuevo valor de parámetro |
Notas de uso
-
El uso de
DBMS_MAX_STRING_SIZE.MODIFY_MAX_STRING_SIZEes un cambio unidireccional que no se puede revertir. Después de cambiar una base de datos al estiloSTANDARDde soportar una longitud máxima de 4000 bytes para los tipos de datoVARCHAR2,NVARCHAR2yRAW, no puede volver a activar los tipos de datoEXTENDED. -
Al usuario ADMIN se le otorga la cláusula
WITH GRANT OPTIONdel privilegioEXECUTEenDBMS_MAX_STRING_SIZE. Oracle recomienda que no utiliceGRANT EXECUTEen este paquete para otros usuarios. -
Se emite el error
ORA-20000si existe algún objeto que impida queMAX_STRING_SIZEse actualice. -
Al usuario ADMIN se le otorga la cláusula
WITH GRANT OPTIONdel privilegioEXECUTEenDBMS_MAX_STRING_SIZE. Oracle recomienda que no utiliceGRANT EXECUTEen este paquete para otros usuarios.
Ejemplo
SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME = 'max_string_size';
NAME VALUE
max_string_size EXTENDED
BEGIN
DBMS_MAX_STRING_SIZE.MODIFY_MAX_STRING_SIZE('STANDARD');
END;
/
PL/SQL procedure successfully completed.
SELECT NAME, VALUE FROM V$PARAMETER WHERE NAME = 'max_string_size';
NAME VALUE
max_string_size STANDARDTema principal: Paquete DBMS_MAX_STRING_SIZE