“Conocimientos software>Software de base de datos

¿Qué es Oracle SQL Code 955

2011/10/25
? Oracle PL /SQL de código de error 955, también conocido como el error ORA- 00955 , se produce cuando un usuario crea un objeto en la base de datos con un nombre ya está en uso por un objeto existente , como una mesa , vista , índice, sinónimo o clúster. Dando al objeto un nombre alternativo generalmente se resuelve el error. Mensaje de la pantalla

Un usuario crea un objeto en la línea de comandos de Oracle PL /SQL con un cierto nombre y ve el mensaje " ORA- 00955 nombre ya está en uso por un objeto existente" en la pantalla .
Causas

El mensaje de error puede ocurrir cuando un usuario instala una actualización , se ejecuta un script de Oracle PL /SQL que cae o crea tablas o índices o usa una reservada palabra de un objeto definido por el sistema . Por lo general , el usuario ha intentado crear un objeto con un nombre ya asignado a un objeto existente en la base de datos .

Solución

Los usuarios se les recomienda seleccionar otro nombre o el objeto o para modificar y cambiar el nombre de un objeto existente para permitir el uso del nombre previsto . Consultar los dba_objects tabla del sistema o user_objects para confirmar si otro usuario tiene el nombre en uso

Compruebe también alias y sinónimos públicos para el nombre actual , utilizando las siguientes frases : .

SELECT * FROM ALL_OBJECTSWHERE ObjectName = " NOMBRE " ;

ALL_OBJECTS la tabla contiene la lista de todos los objetos que puede acceder el usuario para el inicio de sesión específica de identificación. Para volver a utilizar el nombre , retire todos los objetos no deseados con el mismo nombre.
Omitir el error mediante una excepción Handler

Los usuarios pueden pasar por alto ORA- 00955 mediante la creación de un manejador de excepciones que pasa por alto el error de creación de objetos. Crear un fragmento de código PL /SQL que atrapa el error y asigna el error de estado " NULL" :

DECLAREMyNamedTableExists EXCEPCIÓN ; exception_init pragma ( MyNamedTableExists , -955 ) ; SQL_stmt varchar2 ( 50 ) : = ' crear mesa tempstore ( col1 número) ' ; COMENZAR /* ejecutar SQL_stmt inmediata ; * /CREATE TABLE MyNamedTableExists ASSELECT * FROM MySupposedTable ;/* + Ignorar ORA - 955 errores si ya existe el nombre de la tabla ) * /excepción cuando MyNamedTableExists luego NULL ; fin;

Software de base de datos
Cómo ver las fechas de Max en Oracle
Cómo hacer un libro de teléfono en Access
Cómo generar una instrucción INSERT Oracle para SQLPlus
Cómo crear una consulta Registrado Interior
Cómo cambiar una contraseña de usuario en SQL
Cómo escribir y Join sentencias SQL en AS/400
Cómo ejecutar procedimientos almacenados dinámica con Oracle 9i
Tipos de Software para Sistemas de Gestión de Base de Datos
Conocimientos Informáticos © http://www.ordenador.online