Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/10/2010, 15:55
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: AYUDA - create dentro de un begin

hola edwin9012

Si no estoy mal, la ejecución de operaciones DDL no se pueden hacer al interior de una función por lo que se estaría haciendo un COMMIT implicito por la sentencia y que por seguridad no debería dejar realizar.

Para esto, puedes utilizar a cambio un PROCEDURE que haga esta misma tarea.

Otra cosa que veo, es que como lo tienes, te va a crear una tabla llamada nombretabla ya que si está entre comillas no toma el valor que le ingresas por defecto.

Para esto debes hacer uso de SQL dinamico.

quedaría algo así:
Código SQL:
Ver original
  1. EXECUTE IMMEDIATE 'create table ' || nombretabla || ' AS select * from emp';

De esta forma si toma el nombre que le ingresas en el parametro de entrada.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming