MySQL 5.0.19-nt 'Data too long for column . . .'

10 отговора 0 прегледа
#1

MySQL 5.0.19-nt 'Data too long for column . . .'

Направил съм си за улеснение една дребна програмка, която 'смуче' от Excel някакви форматирани от мен данни и посредством (MySQL) ODBC 3.51 драйвер ги налива в една MySQL (версия 5.0.19-nt) база данни. Данните съдържат низове на кирилица.

Когато character set-a e latin1 всичко е наред с 'наливането', с изключение на това, че след това имам 'маймуни' и в шел-а (докато разглеждам записите), и когато извеждам съдържанието на базата на web страница.
Когато character set-a e cp1251 или utf8 още в момента на 'наливане' на данните излиза съобщение:
Data too long for column 'column_name' . . .

Опитвам какво ли не, но още нямам никакава идея какво да наравя, смяна на MySQL-a с версия 4. . . . , един пич пишеше, че нямало проблеми с нея?!?

п.п. Смених сървъра с по-стар, сега наливам 'сичко без проблем, а в WEB страницата ми излизат маймуни.

Редактирано от aз.cъм.Eмo на

Отговор
в отговор на aз.cъм.Eмo #2

Re: MySQL 5.0.19-nt 'Data too long for column . .

Не знам каква е точно хавата за MYSQL,
но по принцип това събщение значи, че в
таблица Table 1, Column 1, DataType varchar2(20) се опитваш да вмъкнеш стринг с дължина 30.

Отговор
в отговор на AйeзCeдaй #3

Re: MySQL 5.0.19-nt 'Data too long for column . .

Да точно това трябва да означава това съобщение за грешка, но дължината на стринга в никакъв случай не превишава големината на полето.


Редактирано от aз.cъм.Eмo на

Отговор
в отговор на aз.cъм.Eмo #4

Re: MySQL 5.0.19-nt 'Data too long for column . .

а колко ти е голям УТФ символа?

proWebCrafter.com
Отговор
в отговор на aз.cъм.Eмo #5

Re: MySQL 5.0.19-nt 'Data too long for column . .

Ами колко, 2 байта, защото е кирилица (за US-ASCII е по един, ако не се лъжа).

Отговор
в отговор на aз.cъм.Eмo #6

Re: MySQL 5.0.19-nt 'Data too long for column . .

поле от 20 символа в латин ще стигне за слагане на 10 символа в утф, вече не се сещам колко е утф, дали 2 или 4

proWebCrafter.com

Редактирано от Bълk на

Отговор
в отговор на Bълk #7

Re: MySQL 5.0.19-nt 'Data too long for column . .

Ахааа, като му наливам UTF8 може да са ми окъсяли рамерите на полетата, 'около' двойно.

Мерсаж, фанах и смених сървъра с 4.1 (по скоро от глупост), и сетнах default character set-a на utf8 и при наливането сичко е ок! Останаха само маймуните по страницата за оправяне.

Отговор
в отговор на aз.cъм.Eмo #8

Re: MySQL 5.0.19-nt 'Data too long for column . .

Предвиждай 4 пъти повече пространство - и няма да имаш проблеми, докато някой не въведе например UTF64 :)

Bеer? Mоre?
Плацебото
Отговор
в отговор на bira_more #9

Re: MySQL 5.0.19-nt 'Data too long for column . .

хех ... между другото символите от талмуда или на дребнопишковци с дръпнати таковата колко байта отнемат?

А за Емо, има си чалъм да инсъртваш УТФ конвертирайки го до 1 байт, ситга да няма символи извън 256 знакова таблица

proWebCrafter.com
Отговор
в отговор на Bълk #10

Re: MySQL 5.0.19-nt 'Data too long for column . .

Слава богу още не съм пуснал нищо, инак щеше да е драма, MySQL-a го 'наливам' с незаменимата помощ ODBC 3.51 драйвера, написах си едно 'лайно' та да мога да си гледам таблиците и да редактирам записите в тривиалния Excel.

Успех

п.п. 'Сичко го оправих, UTF-8 и налях отново, сега е ОК! Само дето след като заредя страницата опците, които дърпам от базата (аякс) в селект кутиите излизат на маймуни, ама и на това 'ше му намеря края.

Отговор
в отговор на aз.cъм.Eмo #11

Re: MySQL 5.0.19-nt 'Data too long for column . .

SET NAMES 'utf8' след select на DB

proWebCrafter.com
Отговор