Problème de in

garfield -  
 garfield -
Bonjour à tous.

Je sais que Mysql "s'inspire" de Oracle donc j'ai créé un document .sql qui est appelé par mysql.
Dedans j'ai des requêtes écrites comme pour Oracle. Le seul problème c'est que si j'écrits ces lignes :

repeffectcyl char(3) check in ('oui','non'),
etatcyl varchar(9) check in ('neuf', 'occasion'),


il me répond :

#1064 - Erreur de syntaxe près de 'in ('oui','non'),
etatcyl varchar(9) check in ('neuf', 'occasi' à la ligne 7

Je suppose et je pense que j'ai mal écrit ma requête et j'aimerais savoir comment on l'écrit pour qu'elle soit compréhensible sous Oracle.

Merci d'avance

5 réponses

teebo Messages postés 33570 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Salut...
Essaye avec " a la place de ' je crois...

Le TeebObeeT préféré de la moche...
0
garfield
 
non dsl mais ça ne change rien merci quand même.
0
teebo Messages postés 33570 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Mais je suis en train de me demander si le Mysql prend les in...

Le TeebObeeT préféré de la moche...
0
garfield
 
mdr ce serait la pire des blagues : oracles accepte in mais pas mysql, enfin c'est fort possible et je me pose presque la même question : pourquoi il me demande un nombre ?

En effet, j'ai fait la solution simple : suppression totale du in, le reste du script fonctionne.
Je me rends sur la table où j'ai mes in sous mysql et je me place sur le champ et je modifie la valeur de façon à avoir comme un in et la réponse : ce n'est pas un nombre.

Ca je m'en doute c'est logique qu'un varchar ne soit pas un nombre.

Enfin bref, voila quoi, je vais pas trop m'attarder sur ce problème sinon le site que je créé n'avancera pas mdr
0
teebo Messages postés 33570 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
http://tinyurl.com/6et2n

Here are some more variations with Logical Operators and using the 'IN' statement.

mysql> SELECT FirstName FROM names WHERE contact_id < 3 AND LastName LIKE 'D%';
+-----------+
| FirstName |
+-----------+
| Yamila |
+-----------+
1 row in set (0.00 sec)

mysql> SELECT contact_id FROM names WHERE LastName IN ('Diaz','Carrera');
+------------+
| contact_id |
+------------+
| 3 |
| 1 |
+------------+
2 rows in set (0.02 sec)


Si ca peut t'aider, mais ca ressemble bigrement a ce que tu as deja :-S

Le TeebObeeT préféré de la moche...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
garfield
 
surtout que tu as un select. moi c'est dans un create
0