Ver Mensaje Individual
  #4 (permalink)  
Antiguo 13/01/2014, 13:09
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: id´s autoincrementales

Bueno, viendo el breve script, hay algunas cosas que debes cambiar, si quieres usarlo en MySQL.
1) No existen los tipo de dato SERIAL. MySQL no los reconocerá. Este puede ser cambiado por MEDIUMITNT, INT o BIGINT, siempre UNSIGNED para evitar desperdicios, y porque no existen los SI negativos.
2) No existe el tipo de dato CHARACTER. Puede ser CHAR o VARCHAR.

En el contexto de tu script sería hacer esto:
Código MySQL:
Ver original
  1. CREATE TABLE ubicacion
  2. (
  3.   descripcion VARCHAR(200)
  4.  
  5. CREATE TABLE protocolos
  6. (
  7. nombrequipo VARCHAR(100),
  8. descripcion VARCHAR(3000)
  9.  
  10.  
  11. CREATE TABLE equipos
  12. (
  13.   idprotocolo INT UNSIGNED,
  14.   responsablemanten VARCHAR(100),
  15.   idequipo INT UNSIGNED,
  16.   num_inv VARCHAR(100) NOT NULL PRIMARY KEY, #Este tipo de dato no parece bien definido
  17.   nom_eq VARCHAR(100),
  18.   modelo VARCHAR(100),
  19.   marca VARCHAR(100),
  20.   num_serie VARCHAR(100),
  21.   estado VARCHAR(100),
  22.   garantia VARCHAR(30),
  23.   idubica INT UNSIGNED,
  24.   clasificacion VARCHAR(100),
  25.   corriente VARCHAR(100),
  26.   voltaje VARCHAR(100),         #Este tipo de dato no parece bien definido
  27.   frecuencia VARCHAR(100),    #Este tipo de dato no parece bien definido
  28.   potencia VARCHAR(100),       #Este tipo de dato no parece bien definido
  29.   invima VARCHAR(100),
  30.   funcion_equipo VARCHAR(500),
  31.   preventivo VARCHAR(50),
  32.   tipo VARCHAR(100),
  33.   imagen VARCHAR(100),
  34.   CONSTRAINT idprotocolo_fk FOREIGN KEY (idprotocolo) REFERENCES protocolos(idprotocolo)
  35.   CONSTRAINT idubica_fk FOREIGN KEY (idubica) REFERENCES ubicacion (idubica)

Más allá de esto, la tercera tabla no me parece ni normalizada ni bien depurada, ya que las longitudes de los campos parecen puestos al azar, y sin analizar sus características.
Por caso, corriente, voltaje y frecuencia, a mi me hablan de magnitudes, y por tanto entiendo que deberían ser valores numéricos y no de caracteres.
Y eso es un error conceptual que puede traer problemas severos a la hora de las consultas.

Por otro lado, existen aplicativos específicos para migrar bases de un DBMS a otro, que deberías aprovechar. Te evitaría hacer pasos innecesarios de pulido.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)