MySQL databases များကို PHP တွင် operating လုပ်သည့်အခါ MySQLI extension သည်ကြွယ်ဝသောလုပ်ဆောင်ချက်များကိုပေးသည်။ MySQLI_STMT အတန်းကို SQL ထုတ်ပြန်ချက်များကိုအသုံးပြုသည်။ ၎င်းတို့အနက် MySQLI_STMM :: Att_Get function သည် Proprocessing storms property များကိုရရှိရန်အထူးအသုံးပြုသောနည်းလမ်းဖြစ်သည်။ ၎င်းသည်အများအားဖြင့် binding parameters များကိုသို့မဟုတ် executing actions များအဖြစ်အသုံးပြုလေ့မရှိသော်လည်းအချို့သောအခြေအနေများတွင်အလွန်အသုံးဝင်သည်။
MySQLI_STMT :: AttR_Get function ကို preprocessing story ကိုရရှိရန်အသုံးပြုသည်။ ၎င်း၏ပုံမှန်အသုံးပြုမှုမှာ -
$value = $stmt->attr_get($attribute);
$ attribute သည် သင်ရလိုသည့် attribute အမျိုးအစားကိုညွှန်ပြသည့်အနေဖြင့်စဉ်ဆက်မပြတ်ဖြစ်သည်။ ဘုံဂုဏ်သတ္တိများသည်:
MySQLI_STMT_ATTR_APTR_MAX_Length
MySQLI_STMT_ATTR_CARSOR_TYPE : လက်ရှိကြေညာချက်ကို cursor type ကိုရရှိသည်။
ဤလုပ်ဆောင်ချက်၏ပြန်လည်နေရာချထားရေးတန်ဖိုးသည် attribute ပေါ် မူတည်. boolean value, ကိန်းဂဏန်းတစ်ခုဖြစ်နိုင်သည်။
ရှုပ်ထွေးသော application များတွင်မူ Preprocessing Statement ၏အဓိကရုဏ်းများအပေါ် အခြေခံ. နောက်ဆက်တွဲစစ်ဆင်ရေးများကိုသင်ဆုံးဖြတ်ရန်လိုအပ်နိုင်သည်။ ဥပမာအားဖြင့်အချို့သောကိစ္စရပ်များတွင် Cursor အမျိုးအစားကိုလက်ရှိကြေငြာချက်အမျိုးအစားကိုအတည်ပြုလိုပြီးကွဲပြားသောအပြောင်းအလဲနဲ့ယုတ္တိဗေဒကိုရွေးချယ်လိုသည်။
$stmt = $mysqli->prepare("SELECT * FROM users WHERE id = ?");
$stmt->bind_param("i", $userId);
$cursorType = $stmt->attr_get(MYSQLI_STMT_ATTR_CURSOR_TYPE);
if ($cursorType === MYSQLI_CURSOR_TYPE_READ_ONLY) {
// ဖတ်ရန်တစ်ခုတည်းသောယုတ္တိဗေဒ Execute
} else {
// အခြားပြုပြင်ထုတ်လုပ်ခြင်း
}
ရှုပ်ထွေးသော database interaction များကို debugging လုပ်သည့်အခါထုတ်ပြန်ကြေငြာချက်၏ဂုဏ်သတ္တိများကိုရယူခြင်းသည်ပြင်ဆင်မှုပြင်ဆင်မှုသည်မျှော်လင့်ချက်များနှင့်ကိုက်ညီမှုရှိမရှိအတည်ပြုရန်ကူညီနိုင်သည်။ ဥပမာအားဖြင့် Update_Max_length ကို ဖွင့်ခြင်းရှိမရှိအတည်ပြုခြင်းက Field အရှည်သည်အလိုအလျောက်အဆင့်မြှင့်တင်ပြီးဒေတာများကိုဖြတ်တောက်ခြင်းရှိမရှိကိုဆုံးဖြတ်ရန်ကူညီလိမ့်မည်။
များသောအားဖြင့် developer များသည် mySQLI_STMT :: Attr_set ကို attribute များသတ်မှတ်ရန်အသုံးပြုလိမ့် မည် ။
$stmt->attr_set(MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH, true);
$updateMaxLength = $stmt->attr_get(MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH);
if ($updateMaxLength) {
// အောင်မြင်စွာချိန်ညှိခြင်း
} else {
// ခြွင်းချက်ကိုင်တွယ်
}
စွမ်းဆောင်ရည်မြင့်မားသော applications များ - အချို့သော attribies အချို့သည် cursor type ကိုဖွင့်ခြင်းကဲ့သို့သောစွမ်းဆောင်ရည်ကိုတိုးတက်စေနိုင်သည် ။
Dynamic SQL Construction Tool - SQL Execution Protri ကိုညှိနှိုင်းခြင်း attribute များအရညှိပါ ။
Cross-version compatatibility ရှာဖွေတွေ့ရှိခြင်း - ကွဲပြားသော MySQL ဗားရှင်းသို့မဟုတ်ယာဉ်မောင်းများသည်မတူညီသော attribute များကိုထောက်ပံ့သည်။ ပရိုဂရမ်လိုက်လျောညီထွေဖြစ်အောင်သေချာစေရန်အချို့သောအင်္ဂါရပ်များကိုထောက်ပံ့သည်ကိုဆုံးဖြတ်ရန် Att_get_get ကို သုံးပါ။
အသုံးပြုမှု၏ရည်ရွယ်ချက်ကိုရှင်းလင်းပြ <br> attribute တွေဟာ attribute တွေမြန်မြန်ဆန်ဆန်စစ်ဆေးဖို့လိုအပ်တဲ့အခါ attr_get ကို သာသုံးပါ။
attr_sset နှင့်ပေါင်းစပ်အသုံးပြုပါ ပထမ ဦး စွာလိုအပ်သော attribute တွေကို attr_set မှတဆင့် configure လုပ်ပြီး configuration ည့်သည်မှန်ကန်ကြောင်းသေချာစေရန် Att_get ကို သုံးပါ။
အမှားကိုင်တွယ်
Att_get သည် မှားယွင်းသော သို့မဟုတ်အမှားတန်ဖိုးကိုပြန်ပို့နိုင်သည်။ ပရိုဂရမ်၏တည်ငြိမ်မှုကိုသေချာစေရန်ခြွင်းချက်များသို့မဟုတ်အမှားတရားစီရင်ခြင်းကိုထည့်ရန်သေချာပါစေ။
အလွဲသုံးစားမှုကိုရှောင်ကြဉ်ပါ စီးပွားရေးဆိုင်ရာယုတ္တိဗေဒဆိုင်ရာယုတ္တိဗေဒအတွက်ကြေညာချက်ဂုဏ်သတ္တိများရခြင်းမလိုအပ်ပါ။ bind_param ကဲ့သို့သောအခြေခံလုပ်ဆောင်ချက်များကိုအသုံးပြုခြင်းနှင့် action_get ကို အရန်ကိရိယာများအဖြစ်အသုံးပြုခြင်း။
မှတ်တမ်းတင်ခြင်းနှင့်ဗားရှင်းထောက်ခံမှုကိုဂရုပြုပါ MySQLI_STMT :: Attr_et သည် MySQL 0 န်ဆောင်မှုစာကြည့်တိုက်နှင့်ဆာဗာဗားရှင်းပေါ်တွင်မူတည်သည်။