Borrar multiples tablas dinamicamente
Publicado por Borrar tablas dinamicamente (1 intervención) el 21/12/2018 19:53:33
Hola.
Estoy tratando de borrar varias tablas dinamicamente utilizando un while loop y un allocate para ejecutar la instruccion una por una hasta terminar con un conjunto determinado de tablas, los nombres de las tablas los tomo de informaion_schema.tables y luego cuando armo la intruccion de drop esta queda de la siguiente forma:
drop table if exists <schema_table>.<table_name>
si la instruccion if exists no la pongo, todo el SP se detiene. Trate de hacer un handler que manejara la excepcion pero no funciona, y el problema que tengo ahora es que intenta borrar una tabla que ya no existe, y queda en loop infinito.
Alguien sabe cual es la mejor forma de borrar multiples tablas dinamicamente? o algun ejemplo de como se puede hacer?
Esto lo hago porque hay mucha tablas en mi base de datos que no deben de ser creadas porque no respetan el estandar de la empresa, ello previene que se creen mas tablas de manera innecesaria.
El SP que he creado corre dentro de un event cada 3 horas, de esa manera si alguien crea una tabla fueras de las normas de nombramiento esta sera borrada al momento que el evento corra.
Gracias por la ayuda.
Lorena.
Estoy tratando de borrar varias tablas dinamicamente utilizando un while loop y un allocate para ejecutar la instruccion una por una hasta terminar con un conjunto determinado de tablas, los nombres de las tablas los tomo de informaion_schema.tables y luego cuando armo la intruccion de drop esta queda de la siguiente forma:
drop table if exists <schema_table>.<table_name>
si la instruccion if exists no la pongo, todo el SP se detiene. Trate de hacer un handler que manejara la excepcion pero no funciona, y el problema que tengo ahora es que intenta borrar una tabla que ya no existe, y queda en loop infinito.
Alguien sabe cual es la mejor forma de borrar multiples tablas dinamicamente? o algun ejemplo de como se puede hacer?
Esto lo hago porque hay mucha tablas en mi base de datos que no deben de ser creadas porque no respetan el estandar de la empresa, ello previene que se creen mas tablas de manera innecesaria.
El SP que he creado corre dentro de un event cada 3 horas, de esa manera si alguien crea una tabla fueras de las normas de nombramiento esta sera borrada al momento que el evento corra.
Gracias por la ayuda.
Lorena.
Valora esta pregunta
0