Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/11/2012, 05:19
Salami
 
Fecha de Ingreso: junio-2009
Mensajes: 31
Antigüedad: 15 años, 4 meses
Puntos: 0
Copiar estructura tabla mediante "CREATE TABLE"

Buenos días a todos:

Mi pregunta es la siguiente. Tenía entendido que mediante CREATE TABLE es posible copiar la estructura de una tabla en otra distinta. La sentencia sería:

Código SQL:
Ver original
  1. CREATE TABLE copia AS (
  2. SELECT *
  3. FROM JOBS
  4. WHERE 1 = 0) ;

Sin embargo, puedo comprobar que la copia generada no es exactamente igual. Tras un describe de cada tabla, se aprecia que la columna JOB_ID puede ser nula, cuando es la clave primaria d ela tabla:

Código SQL:
Ver original
  1. DESCRIBE copia
  2. Nombre     Nulo     Tipo        
  3. ---------- -------- ------------
  4. JOB_ID              VARCHAR2(10)
  5. JOB_TITLE  NOT NULL VARCHAR2(35)
  6. MIN_SALARY          NUMBER(6)    
  7. MAX_SALARY          NUMBER(6)    
  8.  
  9. DESCRIBE jobs
  10. Nombre     Nulo     Tipo        
  11. ---------- -------- ------------
  12. JOB_ID     NOT NULL VARCHAR2(10)
  13. JOB_TITLE  NOT NULL VARCHAR2(35)
  14. MIN_SALARY          NUMBER(6)    
  15. MAX_SALARY          NUMBER(6)

¿Estoy haciendo algo mal? ¿O es que este método copia toda la estructura excepto la primary key?

Cualquier respuesta es bien recibida. Muchas gracias de antemano.

Última edición por gnzsoloyo; 30/11/2012 a las 06:53 Razón: Código SQL mal etiquetado