• Categoría: Oracle SQL
  • Visto: 20897

Ratio: 4 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio desactivado
 
Rename

El estamento RENAME nos permite renombrar o cambiar el nombre a tablas, vistas, secuencias o sinónimos privados.

 

Precaución, la sentencia RENAME no se puede revertir.

 

  • Oracle Database transfiere automáticamente las restricciones de integridad, los índices y los privilegios del objeto antiguo al nuevo objeto.
  • Oracle Database invalida todos los objetos que dependen del objeto renombrado, como vistas, sinónimos, y procedimientos almacenados y funciones que hacen referencia a una tabla renombrada.

 

Requisitos previos

 

El objeto debe estar en su propio esquema.

 

Compatibilidad Rename

 

Oracle 9i, Oracle 10g, Oracle 11g.

 

Sintaxis

RENAME nombre_antiguo TO nombre_nuevo

 

Semántica

 

nombre_antiguo

 

Especifiqua el nombre de una tabla, vista, secuencia o sinónimo privado existente.

 

nuevo_nombre

 

Especifiqua el nuevo nombre que se le asignará al objeto existente. El nuevo nombre no se debe usar en el mismo espacio de nombres y debe seguir las reglas para nombrar objetos de esquema.

 

 

Restricciones al renombrar objetos. Cambiar el nombre de los objetos está sujeto a las siguientes restricciones:

 

  • No se puede cambiar el nombre de un sinónimo público. En su lugar, tienes que eliminar el sinónimo público y luego volver a crear el sinónimo público con el nuevo nombre.
  • No se puede cambiar el nombre de un sinónimo que tenga cualquier tabla dependiente o cularquier objeto válido definido por el usuario.
  • No se puede usar esta instrucción directamente para cambiar el nombre de las columnas de una tabla, sin embargo, puedes cambiar el nombre de una columna usando el estamento ALTER TABLE.

 

Ejemplo

 

Cambio de nombre de un objeto de base de datos. El siguiente ejemplo utiliza una copia de la tabla de muestra clientes. Para cambiar el nombre de la tabla clientes a clientes_old, ejecuta la siguiente instrucción:

 


SQL>RENAME clientes TO clientes_old;