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

Error MySQL #1064

Estas en el tema de Error MySQL #1064 en el foro de Mysql en Foros del Web. Creo tabla en PHPMyAdmin... @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código MySQL: Ver original CREATE TABLE IF NOT EXISTS 'inscripcion' (     Id INT ( 11 ) NOT ...
  #1 (permalink)  
Antiguo 23/02/2015, 06:20
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 21 años, 3 meses
Puntos: 1
Error MySQL #1064

Creo tabla en PHPMyAdmin...

Código MySQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS 'inscripcion' (
  2.     Id INT(11) NOT NULL AUTO_INCREMENT,
  3.     Nombre VARCHAR(25) NOT NULL,
  4.     Apellidos VARCHAR(25) NOT NULL,
  5.     Título VARCHAR(100) NOT NULL,
  6.     Inicio DATE NOT NULL,
  7.     Fin DATE NOTO NULL,
  8.     Email VARCHAR(100) NOTE NULL,
  9.     PRIMARY_KEY ('Id')
  10.     )
  11.     ENGINE=MyISAM DEFAULT CHARSET=latini AUTO_INCREMENT=1;
[/QUOTE]

Y me sale error

Código MySQL:
Ver original
  1. #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''inscripcion' (
  2.     Id INT(11) NOT NULL AUTO_INCREMENT,
  3.     Nombre VARCHAR(25)' at line 1
[/I][/B]

¿qué significa esto?
__________________
José Daniel Nuño
Informático y desarrollador de Web PHP-MySQL
Fundación Carmen Pardo-Valcarce

Última edición por gnzsoloyo; 23/02/2015 a las 07:04
  #2 (permalink)  
Antiguo 23/02/2015, 07:07
Avatar de 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, 5 meses
Puntos: 2658
Respuesta: Error MySQL #1064

Bueno, este error es muy simple y es muy común con los que recién se inciian: Estas confundiendo los apóstrofos (') con los acentos graves (`).
Los primeros se usan pura y exclusivamente para cadenas de texto, y los segundos para nombres de objetos de base,m como bases, tablas, columnas, rutinas almacenadas, etc.
El nombre de una columna o una tabla no es una cadena de texto.
Quítaselos.

Además, en uno de los campos, en lugar de NOT NULL, pusiste NOTO NULL y en otro NOTE NULL.

Código SQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS inscripcion(
  2.         Id INT(11) NOT NULL AUTO_INCREMENT,
  3.         Nombre VARCHAR(25) NOT NULL,
  4.         Apellidos VARCHAR(25) NOT NULL,
  5.         Título VARCHAR(100) NOT NULL,
  6.         Inicio DATE NOT NULL,
  7.         Fin DATE NOT NULL,
  8.         Email VARCHAR(100) NOT NULL,
  9.         PRIMARY_KEY (Id)
  10.         )
  11.         ENGINE=MyISAM DEFAULT CHARSET=latini AUTO_INCREMENT=1;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 24/02/2015, 03:21
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 21 años, 3 meses
Puntos: 1
Respuesta: Error MySQL #1064

Gracias por el consejo sobre apóstrofos y acentos graves. Estos no los sabía.

Cierto, un fallo sobre NOT. Pero he comprobado la tuya de código SQL y me sale error:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(Id)
)
ENGINE=MyISAM DEFAULT CHARSET=latini AUTO_INCREMENT=1' at line 9


No entiendo?
__________________
José Daniel Nuño
Informático y desarrollador de Web PHP-MySQL
Fundación Carmen Pardo-Valcarce

Última edición por Dselling; 24/02/2015 a las 03:33
  #4 (permalink)  
Antiguo 24/02/2015, 03:41
Avatar de 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, 5 meses
Puntos: 2658
Respuesta: Error MySQL #1064

No entiendes porque no lo estás analizando...
Mira con cuidado y veras que estas usando acentos en los nombres.

No los uses...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 24/02/2015, 05:38
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 21 años, 3 meses
Puntos: 1
Respuesta: Error MySQL #1064

Lo he intentado y nada. Lo he mirado y sale siempre error. Desde PHPmyadmin.
__________________
José Daniel Nuño
Informático y desarrollador de Web PHP-MySQL
Fundación Carmen Pardo-Valcarce
  #6 (permalink)  
Antiguo 24/02/2015, 06:25
Avatar de 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, 5 meses
Puntos: 2658
Respuesta: Error MySQL #1064

PHPmyadmin es sólo una herramienta de front-end para administrar MySQL de modo amigable. El error no es de PHPmyadmin, sino de MySQL. No confundas el motor de Base de Datos MySQL con una interfaz.
No son la misma cosa.

Tienes que estár más atento a lo que te muestra la ventana de edicion de SQL de phpMyadmin...
¿Notaste que resalta en colores toda palabra clave, como INT, VARCHAR, CREATE TABLE, ENGINE, etc.?
¿Te fijaste acaso que PRIMARY_KEY no está resaltada?
Eso es porque está mal escrita. No entiendo en dónde viste que lleve un "_"... En ningún manual aparece asi.
Por otro lado, el charset es Latin1, no Latini.

Te recomiendo que para crear y diseñar bases de datos dejes de lado el phpMyadmin, y uses algo más poderoso y preciso, como MySQL Workbench, que puedes descargar de la web oficial. Es una herramienta nativa para MySQL y te permite crear las bases diseñando en modo gráfico, para luego exportar el script de creación, lo que te permite después ejecutarlo en un solo paso en el phpMyadmin, si asi quieres.

Código MySQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS inscripcion(
  2.         Id INT(11) NOT NULL AUTO_INCREMENT,
  3.         Nombre VARCHAR(25) NOT NULL,
  4.         Apellidos VARCHAR(25) NOT NULL,
  5.         Título VARCHAR(100) NOT NULL,
  6.         Inicio DATE NOT NULL,
  7.         Fin DATE NOT NULL,
  8.         Email VARCHAR(100) NOT NULL,
  9.         PRIMARY KEY(Id)
  10.         )
  11.         ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 24/02/2015, 06:54
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 21 años, 3 meses
Puntos: 1
Respuesta: Error MySQL #1064

Vale. Mañana lo comprobaré. Gracias.
__________________
José Daniel Nuño
Informático y desarrollador de Web PHP-MySQL
Fundación Carmen Pardo-Valcarce
  #8 (permalink)  
Antiguo 25/02/2015, 04:12
 
Fecha de Ingreso: enero-2003
Ubicación: Madrid
Mensajes: 136
Antigüedad: 21 años, 3 meses
Puntos: 1
Respuesta: Error MySQL #1064

Buenos días,

Ahora si funciona. Eres un crack. Así que debo aprender bien con ojos muy meticuloso en cada carácter sin ningún fallo. Debo aprender mucho....

Gracias
__________________
José Daniel Nuño
Informático y desarrollador de Web PHP-MySQL
Fundación Carmen Pardo-Valcarce
  #9 (permalink)  
Antiguo 25/02/2015, 05:35
Avatar de 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, 5 meses
Puntos: 2658
Respuesta: Error MySQL #1064



__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: 1064, php, sql, tabla
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.