sql capricieu?

11 réponses
AuteurMessage

DarkSquall |
Membre

Photo de DarkSquall

Inscrit le : 27/08/2005

# Le 12/11/2005 à 05:34

Bonjour,

Je me demande pourquoi mysql me retourne une erreur dans un cas précis...

Je simplifie la requête :

insert into table (`id`, `bip`) values ('','bip')
OK
insert into table values ('','bip')
OK
insert into table (id, bip) values ('','bip')
PAS OK

Pourquoi?
Ce qui est étonnant, dans toutes mes requêtes je fais (id, bip) et non (`id`, `bip`) mais là, je sais pas pourquoi, ça passait pas sinon...

PS : Je tourne sous mysql 4.1.14

Isyweb.comOuvrir dans une nouvelle fenetre

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 12/11/2005 à 11:22

c'est bien "bip" le nom de la colonne ? parce qu'à mon avis, tu es tout simplement tombé sur un mot clé

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

MathieuC | Mathieu
Modérateur

Photo de MathieuC

Inscrit le : 15/07/2005

# Le 12/11/2005 à 11:29

Si le nom de la colonne comprends un -, myql pense que c'est une soustraction

Enfin il faudrait les vrai noms pour verifier que tes noms de colonnes posent pas de souci;)

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 12/11/2005 à 11:33

Le pire que j'ai vu comme ça, c'est une base dont les noms de tables ainsi que les champs de celles ci contenaient des espaces et des accents... bonjour le bordel

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

DarkSquall |
Membre

Photo de DarkSquall

Inscrit le : 27/08/2005

# Le 12/11/2005 à 15:47

Voilà le tout :

$r = mysql_query("insert into messages (`id`, `id_exp`, `id_dest`, `msg`, `special`, `exp_d`, `dest_d`, `lu`, `rep`, `long`, `date`) values ('','$id_mbr','$id','$c_message','$c_special','0','0','0','0','$c_long','".date("Y-m-d H:i:s")."')");

Pas d'espaces, ni de -, normal, quoi...

Mais quand j'avais l'erreur, il me m'était toujours error syntax near 'long, .... long, serait un mot clé, qui servirait à quelques chose?

(Message édité le 12-11-2005 à 15h54 par DarkSquall)

Isyweb.comOuvrir dans une nouvelle fenetre

jerome347 | Jérôme
Membre

Photo de jerome347

Inscrit le : 09/05/2005

# Le 12/11/2005 à 16:14

j'aurais plutôt dit que c'est date le mot clé.

Julgates | Julien
Administrateur

Photo de Julgates

Inscrit le : 09/03/2005

# Le 12/11/2005 à 16:35

j'ai plein de champs qui s'appellent date et ça passe toujours, long est surement un mot clef oui, mais entre quote comme ça ça devrait etre bon normalement...

si tu la mets dans phpmyadmin il te colorise le long ?

Shopping Time NetworkOuvrir dans une nouvelle fenetre - Founder / CTO

bhamp0 | Benjamin
Membre

Photo de bhamp0

Inscrit le : 09/05/2005

# Le 12/11/2005 à 17:17

date et long sont des mots-clés il me semble ... donc voilà quoi

Quand on voit c'qu'on voit, et qu'on entend c'qu'on entend, on a raison d'penser c'qu'on pense !

DarkSquall |
Membre

Photo de DarkSquall

Inscrit le : 27/08/2005

# Le 12/11/2005 à 17:23

Oui entre les quotes obliques, ça passe.

Je voulais juste comprendre pourquoi...

Merci

Sinon dans phpmyadmin il colorise DATE et LONG.

Donc j'en reviens à comprendre qu'on peut pas utiliser 2 mots clés d'affillé, sans quotes?

Isyweb.comOuvrir dans une nouvelle fenetre

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 13/11/2005 à 13:46

Normalement tu ne peux pas du tout utiliser de mots clés comme nom de colonne. J'avais par exemple la mauvaise habitude d'appeler un champ DESC au lieu de DESCRIPTION, ce qui évidemment causait le même soucis

Toutefois il semblerait que depuis une X version, la colonne "date" soit tolérée (ça n'a pas toujours été le cas il me semble).

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

DarkSquall |
Membre

Photo de DarkSquall

Inscrit le : 27/08/2005

# Le 13/11/2005 à 18:52

Ah oki.

Merci pour ces infos bool

Gros bisous

Isyweb.comOuvrir dans une nouvelle fenetre

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 13/11/2005 à 20:19

moarf

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

Répondre

Vous ne pouvez pas participer au forum, car votre inscription n'a pas été validée. Pour vous faire valider en tant que Membre, cliquez ici.

© MHN - Tous droits réservés | CNIL N°844440 | 23/11/2024 22:47:38 | Généré en 6.59ms | Contacts | Mentions légales |