Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Mysql et problème de charset

5 réponses
Avatar
Bulot Grégory
bonjour,=20

On me demande de transferer une base mysql local chez ovh (via phpmyadmin)

Je passe les probl=E8mes de taille de fichiers et les insert into global pa=
r=20
table,=20

En local (essai fait sans l'option charset et avec comme param :=20
latin1_swedish_c et latin1) :=20
mysqldump --skip-opt --default-character-set=3Dlatin1_swedish_ci --add-drop=
=2Dtable=20
$MyUser $MyPass $Base --tables $i > $FicOut$i

j'ai une table qui me retourne cela comme erreur ches ovh :
Erreur

requ=EAte SQL :=20

CREATE TABLE `articles_swift_trading_2` (
`id` smallint( 4 ) unsigned NOT NULL ,
`id_ordre` tinyint( 2 ) unsigned NOT NULL default '0',
`ref_fournisseur` varchar( 15 ) COLLATE latin1_general_ci NOT NULL default =
'',
`nom_fr` varchar( 50 ) COLLATE latin1_general_ci NOT NULL default '',
`nom_us` varchar( 50 ) COLLATE latin1_general_ci NOT NULL default '',
`description_fr` text COLLATE latin1_general_ci,
`description_us` text COLLATE latin1_general_ci,
`prix_ha_ht_euro` decimal( 6, 2 ) unsigned NOT NULL default '0.00',
`marge` decimal( 5, 2 ) NOT NULL default '0.00',
`id_categorie` smallint( 4 ) unsigned NOT NULL default '0',
`id_sous_categorie` smallint( 4 ) unsigned default NULL ,
`sexe` tinyint( 1 ) unsigned NOT NULL default '2',
`id_fournisseur` tinyint( 2 ) unsigned NOT NULL default '0',
`poids` smallint( 5 ) unsigned default NULL ,
`port` decimal( 6, 2 ) unsigned default NULL ,
`id_couleur` tinyint( 2 ) unsigned default NULL ,
`tailles_dispo` varchar( 50 ) COLLATE latin1_general_ci default NULL ,
`type_taille` varchar( 10 ) COLLATE latin1_general_ci default NULL ,
`photo` tinyint( 1 ) unsigned NOT NULL default '0',
PRIMARY KEY ( `id` )
)

MySQL a r=E9pondu:
#1064 - You have an error in your SQL syntax. Check the manual that=20
corresponds to your MySQL server version for the right syntax to use=20
near 'collate latin1_general_ci NOT NULL default '',
`nom_fr` varch=20



Comment puis-je m'en sortir ? y'a-t-il des risques de dommages collat=E9rau=
x=20
(comment les =E9viter ?)

5 réponses

Avatar
Jean-Michel OLTRA
bonjour,


Le dimanche 06 août 2006, Bulot Grégory a écrit...


MySQL a répondu:
#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 'collate latin1_general_ci NOT NULL default '',
`nom_fr` varch





Comment puis-je m'en sortir ? y'a-t-il des risques de dommages collatéraux
(comment les éviter ?)



J'ai le manuel de la version 5 et 4.1
Je n'ai pas vu de collate dans la définition d'une colonne ? J'ai mal
vu, ou l'erreur est là !

--
jm

A.E.L. Sarl (R.C.S CASTRES 490843240)
http://www.affaires-en-ligne.com


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Bulot Grégory
Le dimanche 6 août 2006 18:34, Jean-Michel OLTRA a écrit :

J'ai le manuel de la version 5 et 4.1
Je n'ai pas vu de collate dans la définition d'une colonne ? J'ai mal
vu, ou l'erreur est là !



elle est là (je pense) , j'ai d'autres bases avec cette définitio n absente, et
cela passe sans ronchonner.

la seule référence approchant la syntaxe généré pa r le mysqldump est là :
http://dev.mysql.com/doc/refman/4.1/en/charset-collate.html



--
jm

A.E.L. Sarl (R.C.S CASTRES 490843240)
http://www.affaires-en-ligne.com


Avatar
Bulot Grégory
Le dimanche 6 août 2006 19:28, Bulot Grégory a écrit :
Le dimanche 6 août 2006 18:34, Jean-Michel OLTRA a écrit :



> Je n'ai pas vu de collate dans la définition d'une colonne ? J'ai mal
> vu, ou l'erreur est là !

elle est là (je pense) , j'ai d'autres bases avec cette définit ion absente,
et cela passe sans ronchonner.


mais y'a pas de caractère accentué non plus
Avatar
Jean-Michel OLTRA
bonjour,


Le lundi 07 août 2006, Bulot Grégory a écrit...


> elle est là (je pense) , j'ai d'autres bases avec cette définition absente,
> et cela passe sans ronchonner.
mais y'a pas de caractère accentué non plus



Tu peux définir le charset au niveau global dans la création de la base,
ainsi que COLLATE, mais aussi au niveau de la table, avec CHARACTER SET
et COLLATE.


--
jm

A.E.L. Sarl (R.C.S CASTRES 490843240)
http://www.affaires-en-ligne.com


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Bulot Grégory
Le lundi 7 août 2006 11:13, Jean-Michel OLTRA a écrit :
bonjour,


Le lundi 07 août 2006, Bulot Grégory a écrit...

> > elle est là (je pense) , j'ai d'autres bases avec cette déf inition
> > absente, et cela passe sans ronchonner.
>
> mais y'a pas de caractère accentué non plus

Tu peux définir le charset au niveau global dans la création de la base,
ainsi que COLLATE, mais aussi au niveau de la table, avec CHARACTER SET
et COLLATE.




mysqldump --default-character-set=latin1 --compatible=mysql40
--skip-opt --add-drop-table
$MyUser $MyPass $Base --tables $i > $FicOut$i