Acabo de tener el problema de que definí un Tipo y lo probé en TOAD y todo estuvo bien. Pero ejecutando bajo SQL * PLUS arrojó un error.
Ejemplo:
CREATE OR REPLACE TYPE MyType AS OBJECT (
Item1 NUMBER,
Item2 NUMBER
);
Por alguna razón, tengo que agregar una barra aquí
CREATE OR REPLACE TYPE MyType AS OBJECT (
Item1 NUMBER,
Item2 NUMBER
);
/
Para mí, se parece a una instrucción Crear tabla, que no requiere una barra inclinada. Lo encuentro bastante confuso. Sé cómo funciona, pero ¿alguien puede explicar por qué se tomó esta decisión de diseño?
Respuestas:
necesita un
/
bloque PL / SQL después de SQL * Plus:Esto es para que SQL * Plus sepa que ha terminado con su declaración (que podría incluir intermedios, sin terminación
;
).Los tipos de SQL pueden incluir código PL / SQL, por lo tanto, los desarrolladores de SQL * Plus decidieron que necesita
/
en todos los casos después de CREATE TYPE:Nota : también necesita un
/
después de definir un procedimiento, un paquete o un cuerpo de paquete (por el mismo motivo).fuente