Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Ayuda para encontrar error de este codigo por favor

Estas en el tema de Ayuda para encontrar error de este codigo por favor en el foro de Bases de Datos General en Foros del Web. Hola ¡ Utilizo MySQL 4.0 y resulta que me pasaron el codigo de una BD, a continuacion les muestro una parte del codigo, pero me ...
  #1 (permalink)  
Antiguo 23/02/2005, 22:58
Avatar de webbeginner  
Fecha de Ingreso: noviembre-2004
Mensajes: 241
Antigüedad: 20 años
Puntos: 2
Ayuda para encontrar error de este codigo por favor

Hola ¡


Utilizo MySQL 4.0 y resulta que me pasaron el codigo de una BD, a continuacion les muestro una parte del codigo, pero me dice que hay un error:

"1064 You have an error in your SQL. Check the manual that corresponds to your MySQL Server version for the right syntax to "

Código:
CREATE TABLE acceso (
  nombre varchar(50) NOT NULL default '',
  login varchar(10) NOT NULL default '',
  `password` varchar(10) NOT NULL default '',
  permisos enum('caja','admon') NOT NULL default 'caja'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Alguien sabe a que version se refiere este codigo?

O porque no me funciona, probe quitar la ultima linea y pero aparecen otras cosas y no se crean bien las tablas.

Por favor que alguien sea tan amable de orientarme para q me funcione ese codigo

Gracias

__________________
************************
"La bondad es simple; la maldad, múltiple"
  #2 (permalink)  
Antiguo 24/02/2005, 02:55
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 10 meses
Puntos: 10
Prueba asi,

CREATE TABLE `acceso` (
`nombre` varchar(50) NOT NULL,
`login` varchar(10) NOT NULL,
`password` varchar(10) NOT NULL,
`permisos` enum('caja','admon') NOT NULL DEFAULT 'caja'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
  #3 (permalink)  
Antiguo 24/02/2005, 03:59
Avatar de yeti  
Fecha de Ingreso: octubre-2004
Ubicación: España, Madrid
Mensajes: 152
Antigüedad: 20 años, 1 mes
Puntos: 0
Cita:
Iniciado por webbeginner
Hola ¡


Utilizo MySQL 4.0 y resulta que me pasaron el codigo de una BD, a continuacion les muestro una parte del codigo, pero me dice que hay un error:

"1064 You have an error in your SQL. Check the manual that corresponds to your MySQL Server version for the right syntax to "

Código:
CREATE TABLE acceso (
  nombre varchar(50) NOT NULL default '',
  login varchar(10) NOT NULL default '',
  `password` varchar(10) NOT NULL default '',
  permisos enum('caja','admon') NOT NULL default 'caja'
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Alguien sabe a que version se refiere este codigo?

O porque no me funciona, probe quitar la ultima linea y pero aparecen otras cosas y no se crean bien las tablas.

Por favor que alguien sea tan amable de orientarme para q me funcione ese codigo

Gracias

porq pones password entre comillas??
__________________
Cuando creas que no hay solución posible, busca en los foros, siempre en mejor tener a la red mundial de tu parte
  #4 (permalink)  
Antiguo 24/02/2005, 04:08
Avatar de Vice  
Fecha de Ingreso: agosto-2003
Mensajes: 613
Antigüedad: 21 años, 3 meses
Puntos: 2
El problema te lo está dando con el conjunto de caracteres por defecto. Al verlo me dio curiosidad, pues no le veía ningún error y si lo hay:
Código:
CREATE TABLE acceso (
  nombre varchar(50) NOT NULL default '',
  login varchar(10) NOT NULL default '',
  `password` varchar(10) NOT NULL default '',
  permisos enum('caja','admon') NOT NULL default 'caja'
) ENGINE=MyISAM DEFAULT CHARACTER SET latin1;
de todas formas, en las pruebas que hice no me admite el poner el conjunto de caracteres por defecto, no sé a que es debido, pero si a esta instrucción le sacas el "default character set latin1" funciona correctamente.
Un saludo.
__________________
Estoy contagiado de Generación-I
  #5 (permalink)  
Antiguo 24/02/2005, 04:11
Avatar de Vice  
Fecha de Ingreso: agosto-2003
Mensajes: 613
Antigüedad: 21 años, 3 meses
Puntos: 2
Curioso, acabo de volver a probar y con quitar la clausula "default" todo correcto.
Código:
CREATE TABLE acceso (
  nombre varchar(50) NOT NULL default '',
  login varchar(10) NOT NULL default '',
  `password` varchar(10) NOT NULL default '',
  permisos enum('caja','admon') NOT NULL default 'caja'
) ENGINE=MyISAM CHARACTER SET latin1;
Un saludo.
__________________
Estoy contagiado de Generación-I

Última edición por Vice; 24/02/2005 a las 05:45
  #6 (permalink)  
Antiguo 24/02/2005, 05:31
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 10 meses
Puntos: 10
lo de antes da un error en lo de latin1... yo lo he probado con el siguiente codigo y funciona, prueba a ver q tal!

CREATE TABLE `acceso` (
`nombre` varchar(50) NOT NULL,
`login` varchar(10) NOT NULL,
`password` varchar(10) NOT NULL,
`permisos` enum('caja','admon') NOT NULL DEFAULT 'caja'
) TYPE=MyISAM
  #7 (permalink)  
Antiguo 24/02/2005, 09:44
Avatar de webbeginner  
Fecha de Ingreso: noviembre-2004
Mensajes: 241
Antigüedad: 20 años
Puntos: 2
Gracias a todos por su ayuda.

Lo probe quitando Default como ustedes lo comentaron, y parece que ya no hubo problemas.

Saludos ¡
__________________
************************
"La bondad es simple; la maldad, múltiple"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:23.