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

ayuda con este error

Estas en el tema de ayuda con este error en el foro de Mysql en Foros del Web. Couldn't execute query: INSERT INTO articulos('clave','descripcion','precio')VALUES ('34','sad','43'), error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server ...
  #1 (permalink)  
Antiguo 01/05/2008, 11:06
(Desactivado)
 
Fecha de Ingreso: mayo-2007
Mensajes: 547
Antigüedad: 16 años, 11 meses
Puntos: 1
ayuda con este error

Couldn't execute query: INSERT INTO articulos('clave','descripcion','precio')VALUES ('34','sad','43'), error: 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 ''clave','descripcion','precio')VALUES ('34','sad','43')' at line 1

este es mi codigo
<?
$clave =$_POST["txtclaveprod"];
$descripcion = $_POST["txtdescrip"];
$precio = $_POST["txtprecio"];

$base="cleanhou_cleanhouse";
$conexion=mysql_connect("localhost","cleanhou_root ","****")or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db($base,$conexion)or die ('ERROR con la base de datos');
Hola la base de datos la importe de mi servidor local pero si algo puede ayudar, mi servidor es Version 5 y la version donde intento trabajar es la Server version: 4.1.22-standard que no me funciona nada de mis codigos ni de consulta de para insertar registros dentro de mis tablas , ni tampoco puedo crear nuevas tablas.

ya revise mi bas de datos , mis tablas nuevamente y esta correctas, meto el codigo con el que trato de insertar los registros desde SQL y funciona bien pero no me funciona desde php.
como puedo resolver este problema?


$sql = "INSERT INTO articulos('clave','descripcion','precio')VALUES ('$clave','$descripcion','$precio')";
$result = mysql_query($sql,$conexion) or die("Couldn't execute query: $sql, error: " . mysql_error());

?>


donde tendre el problema

Última edición por RicardoU; 01/05/2008 a las 13:28
  #2 (permalink)  
Antiguo 01/05/2008, 13:28
(Desactivado)
 
Fecha de Ingreso: mayo-2007
Mensajes: 547
Antigüedad: 16 años, 11 meses
Puntos: 1
Re: ayuda con este error

Cita:
Iniciado por RicardoU Ver Mensaje
Couldn't execute query: INSERT INTO articulos('clave','descripcion','precio')VALUES ('34','sad','43'), error: 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 ''clave','descripcion','precio')VALUES ('34','sad','43')' at line 1

este es mi codigo
<?
$clave =$_POST["txtclaveprod"];
$descripcion = $_POST["txtdescrip"];
$precio = $_POST["txtprecio"];

$base="cleanhou_cleanhouse";
$conexion=mysql_connect("localhost","cleanhou_root ","****")or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db($base,$conexion)or die ('ERROR con la base de datos');
Hola la base de datos la importe de mi servidor local pero si algo puede ayudar, mi servidor es Version 5 y la version donde intento trabajar es la Server version: 4.1.22-standard que no me funciona nada de mis codigos ni de consulta de para insertar registros dentro de mis tablas , ni tampoco puedo crear nuevas tablas.

ya revise mi bas de datos , mis tablas nuevamente y esta correctas, meto el codigo con el que trato de insertar los registros desde SQL y funciona bien pero no me funciona desde php.
como puedo resolver este problema?


$sql = "INSERT INTO articulos('clave','descripcion','precio')VALUES ('$clave','$descripcion','$precio')";
$result = mysql_query($sql,$conexion) or die("Couldn't execute query: $sql, error: " . mysql_error());

?>


donde tendre el problema
Hola la base de datos la importe de mi servidor local pero si algo puede ayudar, mi servidor es Version 5 y la version donde intento trabajar es la Server version: 4.1.22-standard que no me funciona nada de mis codigos ni de consulta de para insertar registros dentro de mis tablas , ni tampoco puedo crear nuevas tablas.

ya revise mi bas de datos , mis tablas nuevamente y esta correctas, meto el codigo con el que trato de insertar los registros desde SQL y funciona bien pero no me funciona desde php.
como puedo resolver este problema?
  #3 (permalink)  
Antiguo 01/05/2008, 13:56
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Re: ayuda con este error

Realmente, no tienes, según creo, ningún problema con MySQL, sino con PHP. Si quitas las comillas de las variables que ingresen dato en un campo numérico, resolverás el problema. Es decir, si precio y clave son campos numéricos en tu base, quita las comillas de la variable. Y quita también las comillas de los nombres de campo. Pregunta en el foro PHP por el detalle...

$sql = "INSERT INTO articulos (clave, descripcion, precio) VALUES ($clave,'$descripcion',$precio)";
  #4 (permalink)  
Antiguo 01/05/2008, 15:10
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, 4 meses
Puntos: 2658
Re: ayuda con este error

Anda por allí la cosa.
Es posible que te hayas confundido al ver los nombres de los campos en pantalla en algún momento: Los nombres de los campos, MySQL los suele poner entre acentos graves (`), no entre apóstrofes ('), para considerar la posibilidad de que el usuario haya utilizado palabras reservadas (PASSWORD, USER, IN, COLLATION, FETCH, etc.) o caracteres no admitidos ( -, : , & , etc. ) como parte de los nombres de los campos.
En esos casos el nombre va encerrado entre acentos graves, que para el castellano (o español, como dicen ahora), no se escriben.
Visualmente es posible confundirlos, pero ese es el uso. Los apóstrofes, por otro lado, sirven sólo para colocar cadenas de texto (strings), nada más.
Si estás seguro de no haber usado ni palabras reservadas, ni caracteres no admitidos, pon los nombres sin encerrar en nada. Es más fácil.
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 19:47.