Monday, December 12, 2011

အံ့ဖွယ် MySQL

ကျွှန်တော် ဒီတစ်ခေါက် လုပ်နေသော ပရိုဂျက်သည် ယခင် VB နှင့် Microsoft SQL Server နှင့် ရေးထားသော ပရိုဂျက်ကို Java Online အဖြစ် ပြောင်းရေးခြင်း ဖြစ်ပါသည်။ ယခင်ရေးထားသော အရာများကို ပြုပြင်ရင်း၊ ဖန်ရှင်အသစ်များကို ဖြည့်စွက်ရင်း ဆိုသလိုဖြစ်ပါသည်။

ကျွှန်တော်ဒီ ပရိုဂျက်ကို ရောက်ရှိချိန်မှာ အတော်လေးနောက်ကျနပြီဖြစ်၏။ ကြားရသည် မှာ Ajax နှင့် Enterprise Project ကိုရေးမည်ဟုဆို၏။ ဝမ်းသာမိပါသည်။ ကျွှန်တော်ကိုယ်တိုင်လည်း JSF နှင့် Struts Frameworks များ၏ User Interface ကို သိပ်ပြီး အဆင်ပြေလှသည်ဟု မထင်မိသောကြောင့်ဖြစ်၏။

Ajax ၏ ကောင်းကွက်များနှင့် Java EE ၏ ကောင်းကွက်များကို ပေါင်းပြီး Open EMS တွေကို ရေးချင်ခဲ့သောကြောင့် ဖြစ်၏။ ဤနေရာတွင် အသုံးပြုခဲ့သော XPlatform သည် လုံးဝအစဉ်မပြေပါ။ JavaScirpt ဖြင့်ရေးထားပြီး၊ အမြင်မှာလှသော်လည်း၊ လုပ်ဆောင်ပုံများမှာ မသေသပ်ပါ။ Ajax Framework များစွာအသုံးပြုခဲ့ဘူးပါသည်။ သို့သော် ဒီလောက်အသုံးမကျတဲ့ Framework ကို မတွေ့ဘူးပါ။ သုံးရတာအစဉ်မပြေသလို Performance မှာလည်း အလွန်မကောင်းပါ။ ဒီလို Framework မျိုး တစ်သက်လုံး ထွန်းကားရန်မရှိပါ။ စိတ်လျှော့လိုက်ပါသည်။ ထားတော့ထားတော့။


ပြဿနာက ဒီမှာစပါတော့သည်။ Micorsoft SQL Server ကို အသုံးပြုထားပြီး၊ MySQL ကို ရွှေ့မည်ဖြစ်၏။ DB2 နှင့် Oracle သာ အသုံးပြုခဲ့ဘူးသော ကျွှန်တော့်အတွက်တော့ Micorsoft SQL Sever ရော MySql ပါ သုံးစား၍မရပါ။ တစ်ခုခု လိုနေသလိုပင်။

ပြဿနာပေါင်း ရေတွက်၍မရအောင် ရှိခဲ့ပါသည်။ တွေ့ခဲ့ပါသည်။ ဒီနေ့တော့ MySQL ၏ အံ့ဖွယ် အဖြစ်တစ်ခုကို ကို တင်ပြပါမည်။ MySQL ကို အသုံးများခဲ့ရခြင်းသည်၊ ပေါ့ပါးလွယ်ကူ၍ အလကားရခြင်း ကြောင့်ဖြစ်၏။ အလကားရသည့်အပြင် Relational Database ၏ ကောင်းကွက်များကို လွယ်လင့်တကူ အသုံးပြုနိုင်ခဲ့၏။ User Security သိပ်ပြီး စဉ်းစားစရာမလိုပဲ လွယ်ကူစွာ အင်စတောလုပ်နိုင်ပြီး၊ DDL တစ်ပိုဒ်ကို အလုပ်လုပ်ခိုင်ရုံဖြင့် တော်ရုံတန်ရုံ ဒေတာဘေစ်များကို တည်ဆောက်နိုင်ခဲ့၏။ ကောင်းလေစွ။ ကောင်းလေစွ။

Oracle နှင့် DB2တို့၏ ပရိုစီဂျာများ၊ အင်ပေါ့တ်၊ Export ဖန်ရှင်များသည် လွန်စွာမှအစဉ်ပြေခဲ့ သဖြင့်၊ MySql ၏ mysqldump ကို သိပ်ပြီးမကျေနပ်ခဲ့သော်လည်း အသုံးများပါက ယဉ်ပါးလာနိုင်ပါသည်။ ပြဿနာမရှိပါ။

ကျွှန်တော် အံ့သြမိသည်မှာ MySQL တွင် VARCHAR နှင့် CHAR ကော်လန်များတွင် half size space စာလုံးများအား TRIM လုပ်ပြစ်ခြင်းပင်။ အချို့သော စစ္စတမ်များတွင် Half size space စာလုံးများတွင် အဓိပ္ပါယ်ပေးထားလေ့ရှိ၏။ SPACE တစ်လုံးဆိုရင် ဘယ်လို၊ နှစ်လုံးဆိုလျှင် ညာလို ဆိုပြီး အသုံးပြုလေ့ရှိ၏။ ထိုအခါမျိုးတွင် MySQL ကို မသိပဲ အသုံးပြုမိခဲ့ပါက အကြီးအကျယ် ဒုက္ခရောက် သွားနိုင်ပါသည်။

သတိ MySQL ကို သုံးပါက SPACE များတွင် အဓိပ္ပါယ် မပေးပါနှင့်။

1 comment:

  1. Facebook-> Developer Group ထဲကနေ ဒီလိုမေးခွန်းတက်လာပါတယ်
    Lx Lxcorn -> MySQL ကို သုံးပါက SPACE များတွင် အဓိပ္ပါယ် မပေးပါနှင့်" ဆိုတာ ..နားမလည်ဘူး..အစ်ကို.ပြန်ရှင်းပြပေးပါလား @ http://programmer-diaries.blogspot.com/2011/12/mysql.html

    အဖြေ။
    ဥပမာအားဖြင့် User Table တစ်ခုရှိတယ်ဆိုပါစို့။ Role Column ကို NotNull လုပ်ထားပြီး၊ ' '(Half Space) စာလုံးဆိုရင် ပုံမှန်အသုံးပြုသူ၊ '1'ဆိုရင် Admin ဆိုပြီးခွဲထားရင်၊ MySQL မှာ Select လုပ်ရင် Half Space စာလုံးကို Trim လုပ်ပြစ်ပါသဖြင့်၊ Select ရဲ့ ရလဒ်ဟာ ' ' မဟုတ်ပဲ '' ဖြစ်နေတတ်ပါတယ်။ အဲ့ဒါကို ပြောတာပါ။ ပြီးတော့ UserID လို char(4) မှာ '111 ' လို့ Insert လုပ်ပြီး Select လုပ်ကြည့်တဲ့အခါမှာ '111'ကို ပြန်ရပါတယ်။ တကယ့်တကယ်ကြတော့ '111 ' နဲ့ '111' ဟာ မတူပါဘူး။ အဲ့ဒါကိုဆိုလိုတာပါ။

    ReplyDelete