champs <mémo> et mysql-front [BDD] - SQL/NoSQL - Programmation
Marsh Posté le 16-12-2005 à 11:16:41
le type "text" peut contenir jusqu'à 2 Go de données dans un seul champ (peut-être même plus pour MySQL).
pour cette raison, aucun manager de base de données n'affichera le contenu d'un tel champ, même si dedans y'a qu'un seul caractère.
si tu veux que ça s'affiche correctement (et par la même occasion, que MySQL gère correctement les données qui sont dedans (order by, group by, traîtements de chaînes, etc.) alors fait un cast vers le type varchar, qui est limité en taille, et par conséquent "gérable".
Marsh Posté le 16-12-2005 à 15:11:20
ok, je te remercie pour les infos, je comprend mieux maintenant pourquoi.
bon le principe du cast je comprend sans souci aussi, en revanche, je ne sais pas trop où le caler
cependant, à la connaissance de ces infos (--> 2Go) je vais peutetre revenir à du VARCHAR. il faudra que je reteste cependant, je crois vaguement me souvenir (c'est une appli en dev à laquelle j'ai pas touché depuis plus de 6 mois) que j'étais passé en TEXT car sous access il ne comprenait pas le type VARCHAR (je dev mon appli pour pouvoir s'adapter à différents types de bdds: mysql, access, hsql)
Marsh Posté le 16-12-2005 à 15:52:17
access à un équivalent de varchar, c'est string je crois, ou un truc du genre.
le varchar, lui, est plus limité (parfois trop : 4000 caractère pour Oracle)
il faut donc vérifier tout de même la taille maximal de ce type sur chaque SGBD sur lequel va être porté ton application, et conserver des type TEXT si besoin pour les champs contenant de gros volumes d'information (texte kilométrique)
Marsh Posté le 16-12-2005 à 17:16:00
bon alors, peutetre que le pb sous access demeure (il faut que je mappe la couche hsql avant), en tout cas je viens de me souvenir/re-expérimenter pourquoi j'étais passé en TEXT :
VARCHAR ne passe pas lors de la création de table sous Java (mysql-connector), je vais tester avec des versions plus récentes du .jar
mes champs "texte" n'ont pas besoin d'être très grand (maxi 255 me suffirait), que me conseillerais-tu comme type de variables ?
edit: ah, VARCHAR(255) ca passe, bon j'ai résolu mon "problème" (temporairement), reste à voir sous access et hsql
merci de ton aide
Marsh Posté le 16-12-2005 à 02:00:37
salut
j'ai une bdd mysql (créée à partir d'un prog en java)
lorsque je visualise les données des tables de cette base avec mysql-front, les champs de type int ont leur valeur directement affichée, alors que pour tous les autres champs qui sont de type text est affiché "<MEMO>
pourtant lorsque je sélectionne l'un d'entre eux, la valeur "texte" est bien affichée
qqun pourrait m'indiquer le moyen pour que les champs de type text soient directement affichés ?
merci d'avance
Message édité par trevor le 02-01-2006 à 13:56:30
---------------
TReVoR - http://dev.arqendra.net - http://info.arqendra.net