Դիտել ողջ տարբերակը : Excell/MySQL
Ժող լսեք... սենց մի հատ պրոբլեմ կա...
Excell-i մեջ կա բազա, որը գրված ա հայերեն տառերով.. ու էտ բազան պիտի մտցվի MySQL-i մեջ... ինքը նորմալ import ա լինում, բայց տառերի տեղը "?" ա ցույց տալիս.... ով ավել հեշտ ու աշխատող տարբերակ կասի...?
հայերենը Unicodeէ թե Ascii?
հայերենը Unicodeէ թե Ascii?
Եթե unicode լիներ, իմ կարծիքով պիտի բացեր նորմալ չէ? բայց վրոդե ACSII ա... :)
Egern.net
09.03.2007, 13:43
հայերենը Unicodeէ թե Ascii?
Մեսրոպ ջան, եթե ASCII լիներ, ոչ թե հարցական ցույց կտար, այլ western european նշաններ:
Իմ կարծիքով, MySQL-ը խնդիր ունի յունիկոդի հետ: Ավելի ճիշտ, ոչ թե MySQL-ը, այլ էն ծրագիրը, որով access ես անում MySQL բազան... Հավանաբար էդ ծրագիրը Յունիկոդ input չունի...
իցքան հիշում եմ ՄյՍՔԼ-ը ինստալլ անելուց պետքա դնես ունիցոդի վրա
Մեսրոպ ջան, եթե ASCII լիներ, ոչ թե հարցական ցույց կտար, այլ western european նշաններ:
Իմ կարծիքով, MySQL-ը խնդիր ունի յունիկոդի հետ: Ավելի ճիշտ, ոչ թե MySQL-ը, այլ էն ծրագիրը, որով access ես անում MySQL բազան... Հավանաբար էդ ծրագիրը Յունիկոդ input չունի...
ինչ-որ լավ չհասկացա ))
նկատի ունես, էն ծրագիրը, որով տվյալները լցնում եմ բազա? եթե էտ, ուրեմն ասեմ, որ MySQL-i ինտերֆեյս կա, որով էլ հենց անում եմ... կոչվում ա MyCC...
ու անում եմ հետևյալ հրամանով`
load data local infile 'link' into table tablename
Egern.net
10.03.2007, 14:30
Հա, հենց էդ նկատի ունեմ: Իմ կարծիքով խնդիրը էդ MyCC-ի Յունիկոդ սատարելու մեջ է...
Cracker, որպեսզի ավելի հստակ պատասխանեմ, կարո՞ղ ես ասել, թե ինչպես ես import անում ու ի՞նչ MySQL-ի վերսիա ես օգտագործում։
MySQL-ը հայերենի համար unicode ( UTF8 ) support ունի: Unicode Character Set կարող ես դնել ամբողջ սերվերի վրա, կոնկրետ բազաի, աղուսյակի (table), կամ նույնիսկ կոնկրետ դաշտի(column) մակարդակով:
Օրինակ, table-ի համար UTF8 կոդավորում դնելու համար պետք է անես հետևյալը.
CREATE TABLE tbl_name (column_list)
[[DEFAULT] CHARACTER SET charset_name] [COLLATE collation_name]]
Տվյալ դեպքում, եթե քեզ պետք է unicode կոդավորում դնել, ապա պետք է charset_name -ի փոխարեն գրես utf8, իսկ collation_name-ի փոխարեն՝ utf8_general_ci
Եթե TABLE -դ արդեն սարքել ես, ապա table-ի default կոդավորումը unicode-ի փոխելու համար աշխատացրու հետևյալ query-ն.
ALTER TABLE tbl_name
DEFAULT CHARACTER SET utf8
որից հետո table-դ արդեն unicode կոդավորումը կունենա, ու կարող ես հայերեն տեքստեր պահել:
Ավելի մանրամասն կարող ես կարդալ այստեղ.
http://dev.mysql.com/doc/refman/5.0/en/charset-syntax.html
Բացի տվյալները պահելու կոդավորումից, MySQL-ում կա նաև տվյալները կարդալ-գրելու կոդավորում: Եթե ուզում ես սերվերի վրա ի սկզբանե (by default) դրված կարդալ-գրելու կոդավորումից տարբեր կոդավորում օգտագործել (տվյալ դեպքում՝ UTF8 ) ապա պետք է ամեն անգամ բազային կպնելուց (connection ստեղծելուց) անմիջապես հետո մի անգամ աշխատացնես հետևյալ query-ն.
SET NAMES 'utf8';
Էս ասածներս գործում են կարծեմ MySQL 4.1-ից սկսած:
Ավելի մանրամասն կարող ես կարդալ այստեղ.
http://dev.mysql.com/doc/refman/5.0/en/charset.html
Եթե ինչ-որ բան անհասկանալի ասացի, ասա, ավելի մանրամասն կբացատրեմ ;)