MySQL Migration Toolkit (Excel To MySQL)

Posted October 4th, 2009 in Knowledgebase by saturngod

2009-10-04_104737တစ္ခါတစ္ေလ excel က data ေတြကို mysql ထဲ ထည့္ခ်င္ရင္ အရမ္းစိတ္ညစ္ရတယ္။ csv ကေန ေျပာင္းထည့္လို႔ရတယ္။ ဒါေပမယ္႔ အျမဲေတာ့ အဆင္မေျပဘူးဗ်။ စာေတြကရိုက္ရေတာ့ နည္းနည္းေလး မွားသြားတာနဲ့ error message ျပေရာ။ GUI tool ေလးသံုးျပီးထည့္ရင္ေတာ့ အဆင္ေျပပါတယ္။ ဒါေပမယ္႔ ၂ ဆင့္ ၃ ဆင့္ ေလာက္ေတာ့ လုပ္ရမယ္။ MySQL Migration Toolkit ဆိုတာကို mysql ကေန ထုတ္ေပးထားတယ္။ဝမ္းနည္းစရာေကာင္းတယ္က mysql ကို sun က ပိုင္တာျဖစ္လို႔ ျမန္မာႏိုင္ငံကေန download ခ်လို႔လြယ္မွာေတာ့ မဟုတ္ဘူးဗ်။

1.http://dev.mysqlcom/downloads/gui-tools/ ကေန download ခ်လိုက္လို႔ရပါတယ္။

2. Excel ကို အရင္ဆံုး MS Access database အျဖစ္ေျပာင္းလဲဖို႔လိုတယ္။

3. ျပီးရင္ေတာ့ MySQL Migration Toolkit ထဲကိုသြားျပီး ms access ကို import လုပ္ဖို႔လိုတယ္။

4. ျပီးရင္ေတာ့ database အသစ္တစ္ခု ေပါှလာပါမယ္။

5. အဲဒီအခါမွ PHPMyadmin ကေန table ကို export လုပ္ျပီး လိုအပ္တဲ့ Database ထဲကို import ျပန္လုပ္ရံုပါပဲဗ်ာ။

Row ေပါင္းမ်ားစြာ

Posted July 3rd, 2009 in Knowledgebase by saturngod

ဒီေန့ Database ထဲက Row ေပါင္း ၇ ေသာင္းေလာက္ ကို ဘယ္လို Display ျပရင္ေကာင္းမလဲဆိုတာ စဥ္းစားမိတယ္။ အခု လုပ္ေနတဲ့ Project က row ေပါင္း ၇ ေသာင္းေက်ာ္မယ္တဲ့။ အခုစမ္းေနတာ ၂၀၀၀ ေလာက္တင္ Datagridview မွာ သိပ္အဆင္မေျပဘူး။ ေနာက္ေတာ့ web မွာလို page ေတြ ခဲြထုတ္ဖို႔ ဆံုးျဖတ္လိုက္တယ္။ Access မွာေတာ့ MySQL Limit မရိွဘူး။ wiki [1]  အကူအညီနဲ့ Top နဲ့ လုပ္ရတယ္ ဆိုတာ သိသြားတယ္။

Access မွာ
page 1 မွာ ၅၀ ျပျပီးသြားရင္ page 2 ကို
select top 50 * from table where ID Not IN (select top 50 * from table)

အဲလိုေလး ျပန္ထိန္းရတယ္။ ေနာက္ကေတာ့ where နဲ့ filter ျပန္လုပ္ရတယ္။ ပါျပီးသား ID ေတြ မဟုတ္တာဆိုျပီး ေရြးထုတ္လိုက္တဲ့ ပံုေလးေပါ႔။ page ခဲြပံု idea ကိုေတာ့

http://code.mysteryzillion.org/article/separate-page-from-row-record

မွာ ဖတ္ႏိုင္ပါတယ္။ ကြ်န္ေတာ္တို႔ေတြအေနနဲ့ record ေတြမ်ားလာေလေလ… အမ်ားၾကီးကို တစ္ခါတည္း တန္းမျပပဲ page ေလးေတြ ခဲြလိုက္ျခင္းဟာ အသံုးျပဳသူအတြက္ ေတာ္ေတာ္အဆင္ေျပေစပါတယ္။ Memory သံုးတာ ေတာ္ေတာ္သက္သာသြားတယ္။ Database သံုးတာ ေတာ္ေတာ္သက္သာသြားတယ္။ အခုေတာ့ အဆင္ေျပသြားပါျပီဗ်ာ။

  1. http://en.wikipedia.org/wiki/Select_(SQL)#Limiting_result_rows []

MySQL Reference Book

Posted January 27th, 2009 in Download by saturngod

MySQL ကို ကြ်န္ေတာ္ အမွန္တိုင္းေျပာရင္ ကြ်မ္းကြ်မ္းက်င္က်င္မရဘူး။ အျမဲတန္း reference သံုးဖို႔အတြက္ online မွာ တက္ျပီးရွာေနရတယ္။ ဒါေၾကာင့္ PHP လို chm file ေလး ရရင္ေကာင္းမယ္ဆိုျပီး googling လုပ္ၾကည့္လိုက္ေတာ့ ရွာေတြ႕ပါတယ္ဗ်ာ။ တျခားလူေတြလည္း အသံုးဝင္ေအာင္ မွ်ေဝလိုက္ပါတယ္။

http://dev.mysql.com/doc/

CSV to Mysql

Posted January 5th, 2009 in Knowledgebase by saturngod

ေတာ္ေတာ္ေလး မူးေနာက္သြားတယ္ဗ်ာ။ ဆိုးဝါးတာက excel 2007 ပဲ။ excel မွာ လုပ္ထားတဲ့ဟာေတြကို mysql ထဲ ထည့္ခ်င္တယ္။ ရွာတယ္။ မရဘူး။ ဒါနဲ့ csv ေျပာင္းဖို႔လုပ္တယ္။ အဲမွာ excel ကို ေတာ္ေတာ္ ညစ္သြားတာ။ UTF-8 မေျပာင္းေပးဘူးေလ။ အဲမွာသိလိုက္ျပီ။ ဆက္ၾကိဳးစားလို႔မျဖစ္ေတာ့ဘူး။ ဒါနဲ့ Openoffice.org ကေန csv ေျပာင္းေတာ့ အဆင္ေျပသြားတယ္။ ဟိုရွာ ဒီရွာနဲ့

mysql> LOAD DATA LOCAL INFILE '/host/Users/saturngod/Project/dictionary.csv' INTO TABLE dblist FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n';

အဲလိုေလး ေရးလိုက္ေတာ့ ေတာ္ေတာ္ေလးကို အဆင္ေျပသြားတယ္။ အခုေတာ့ CSV ကေန Mysql ကို ေကာင္းေကာင္းေျပာင္းလို႔ရသြားျပီေလ။

Database Charset UTF-8

Posted August 11th, 2008 in Project, Uncategorized by saturngod

ကြ်န္ေတာ္တို႔ေတြ အမ်ားအားျဖင့္ database transfer လုပ္ရင္ UTF-8 မေျပာင္းတာ အျမဲ ျပသနာျဖစ္တယ္ဗ်။
ကြ်န္ေတာ္တို႔ေတြ အစအဆံုး ျပန္ျပန္တင္ေနရတာေတြ ၾကံဳတတ္တယ္။ အဲဒီအတြက္ ကြ်န္ေတာ္ sahana project လုပ္တုန္းက ေရးထားတဲ့ db_setup.php ေလးက ေတာ့ ကိုယ္႔ database တစ္ခုလံုး ရိွတဲ့ field ေတြအပါအဝင္ UTF-8 ေျပာင္းေပးေအာင္ေရးထားပါတယ္။
အဲဒီ file ေလးကို download ခ်ျပီး notepad နဲ့ျဖစ္ျဖစ္ wordpad နဲ့ျဖစ္ျဖစ္ ဖြင့္ျပီး

$db_name=’sahana’;
$host=”localhost”;
$username=”root”;
$pwd=”";

အဲဒီေနရာေတြမွာ ကိုယ္႔ database နဲ့ဆိုင္ရာေတြ ျဖည့္ျပီး db_setup.php ကို run လိုက္ရင္ အားလံုးအဆင္ေျပသြားမွာပါ။
ျမန္မာေတြအတြက္ database transfer လုပ္ျပီးတဲ့အခါ အသံုးဝင္ႏိုင္လို႔ ျဖန္႔ေဝလိုက္ပါတယ္။