¿Cómo puedo descartar todas las tablas de usuario en Oracle?
Tengo problemas con las restricciones. Cuando desactivo todo, todavía no es posible.
oracle
constraints
sql-drop
szaman
fuente
fuente
Respuestas:
fuente
Si solo quieres una forma realmente simple de hacer esto ... Aquí hay un guión que he usado en el pasado
Esto imprimirá una serie de comandos de caída para todas las tablas del esquema. Agrupe el resultado de esta consulta y ejecútelo.
Fuente: https://forums.oracle.com/forums/thread.jspa?threadID=614090
Del mismo modo, si desea borrar más de las tablas, puede editar lo siguiente para satisfacer sus necesidades
fuente
Otra respuesta que funcionó para mí es (crédito a http://snipt.net/Fotinakis/drop-all-tables-and-constraints-within-an-oracle-schema/ )
Tenga en cuenta que esto funciona inmediatamente después de ejecutarlo. No NO producir una secuencia de comandos que necesita para pegar en alguna parte (al igual que otras respuestas aquí). Se ejecuta directamente en la base de datos.
fuente
'DROP TABLE "' || c.table_name || '" CASCADE CONSTRAINTS'
. Esto es necesario si los nombres de las tablas son minúsculas.PURGE
al final de laDROP
declaración.fuente
La forma más simple es descartar al usuario que posee los objetos con el comando en cascada.
fuente
USER
es separado de aDATABASE
.DROP USER username CASCADE
trabajó para mi. Pero en MySQL todo lo que tendría que hacer esDROP DATABASE
crear uno nuevoLa forma más fácil sería soltar el espacio de tabla y luego volver a crearlo. Pero prefiero no tener que hacer eso. Esto es similar al de Henry, excepto que solo hago una copia / pego en el conjunto de resultados en mi GUI.
fuente
user_tables
es una tabla del sistema que contiene todas las tablas del usuario, la cláusula SELECT generará una declaración DROP para cada tabla en la que pueda ejecutar el scriptfuente
Para eliminar todos los objetos en Oracle:
1) dinámico
2) estático
fuente
Por favor siga los pasos a continuación.
fuente