Portál AbcLinuxu, 12. května 2025 18:53

Dotaz: MySQL ořezávání úvodních mezer u typů char - lze odstranit ?

Pavel Stárek avatar 5.8.2004 21:46 Pavel Stárek | skóre: 44 | blog: Tady bloguju já :-) | Kolín
MySQL ořezávání úvodních mezer u typů char - lze odstranit ?
Přečteno: 191×
Odpovědět | Admin
DD,

jde nějakým příkazem, nebo nastavením vypnout uřezávání úvodních mezer ve sloupcích typu CHAR (VARCHAR) ? Dost by se mi hodilo, aby mi tam tu mezeru nechal. Používat datový typ TEXT (nebo BLOB) nemůžu (ODBC klient + VisualBasic je nějak nezvládá). MySQL je verze 3.23.58 z Fedora Core 2.

Pavel
Kdo chce, hledá způsob; kdo nechce, hledá důvod.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

5.8.2004 22:10 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: MySQL ořezávání úvodních mezer u typů char - lze odstranit ?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Počáteční mezery MySQL nedořezává. Odřezává koncové a AFAIK tomu nelze zabránit.
Pavel Stárek avatar 5.8.2004 22:36 Pavel Stárek | skóre: 44 | blog: Tady bloguju já :-) | Kolín
Rozbalit Rozbalit vše Re: MySQL ořezávání úvodních mezer u typů char - lze odstranit ?
DD,

jo, asi to jsou koncové. Ale pokud je sloupec definován jako CHAR(1) - tak jaká to je mezera ? Počáteční i koncová :-) . No jo, ale pokud to nejde tak smůla. Software jsem upravil, ale docela mě to zarazilo. IMHO databázovému stroji by mělo být jedno co si do sloupců ukládám a neměl by data nijak měnit. Čuměl jsem na to jako blbec, když jsem to četl v dokumentaci. Takže jsou dvě řešení: 1. - smířit se s tím, nebo 2. - "hacknout" si mysql zdrojáky. Tak sem se s tím smířil.

Pavel
Kdo chce, hledá způsob; kdo nechce, hledá důvod.
6.8.2004 08:29 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: MySQL ořezávání úvodních mezer u typů char - lze odstranit ?
CHAR(1) by šel změnit na TINYINT UNSIGNED, ovšem vyžaduje to změnu v aplikaci, protože ordinální hodnota a znak nejsou totéž, i když jdou snadno převést...
Pavel Stárek avatar 6.8.2004 16:27 Pavel Stárek | skóre: 44 | blog: Tady bloguju já :-) | Kolín
Rozbalit Rozbalit vše Re: MySQL ořezávání úvodních mezer u typů char - lze odstranit ?
DD,

díky za odpovědi. Toto mě taky napadlo, jenže to by ten Mrkvosoftí komponent Datagrid (či jak se to jmenuje) zase zobrazoval místo mezery a písmenka "Z" (ty jediné se v tom sloupci vyskytují) čísla. No je to hrůza už studuju (a trénuju) Javu. Jak praví název jednoho českého filmu: "Příště budeme chytřejší, drahoušku !".

Pavel
Kdo chce, hledá způsob; kdo nechce, hledá důvod.
7.8.2004 11:12 User682 | skóre: 38 | blog: aqarium | Praha
Rozbalit Rozbalit vše Re: MySQL ořezávání úvodních mezer u typů char - lze odstranit ?
Odpovědět | | Sbalit | Link | Blokovat | Admin
zdravim,
systemove reseni to nebude, ale co takhle dat nejaky neviditelny znak na konec radku. ale tohle neni fakt kvalitni reseni.
ale tahle featura urcite musi jit nejak vypnout.
bye gf

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.