SQL Queries ၏ကွပ်မျက်မှုအခြေအနေကိုစောင့်ကြည့်လေ့လာခြင်းသည် PHP applications များကိုပြုလုပ်သောအခါစွမ်းဆောင်ရည်ကိုလျှော့ချရန်နှင့်အကောင်းမြင်ရန်အရေးကြီးသည်။ MySQLI extension သည် MySQL ဒေတာဘေ့စ်နှင့်အပြန်အလှန်ဆက်သွယ်ရန်နည်းလမ်းများစွာဖြင့် MySQLI :: The MySQLI :: Ifo function သည်နောက်ဆုံးကွပ်မျက်ခံရသော SQL query နှင့်ပတ်သက်သည့်အသေးစိတ်အချက်အလက်များကိုရယူရန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည် SQL Execution status ကိုအချိန်မှန်အတွက် Monitor ကိုစောင့်ကြည့်ရန် MySQLI :: $ အချက်အလက် function ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။
MySQLI :: IFO သည် PHP MySQLI အတန်း၏ပိုင်ဆိုင်မှုသည်အထူးသဖြင့်စုံစမ်းမှုကွပ်မျက်ခံရပြီးနောက်ဒေတာဘေ့စ်နှင့်အပြန်အလှန်ဆက်သွယ်မှုကိုအသေးစိတ်ဖော်ပြထားသော PHP MySQLI အတန်း၏ပိုင်ဆိုင်မှုဖြစ်သည်။ ဤအိမ်ခြံမြေမှတစ်ဆင့် developer များက SQL ကြေငြာချက်၏အခြေအနေကိုရရှိနိုင်ပါသည်။
ဤပိုင်ဆိုင်မှုကိုအဓိကအားဖြင့်အောက်ပါအခြေအနေများတွင်အသုံးပြုသည်။
SQL စုံစမ်းမှုအသေပ်ပြီးနောက်စာရင်းအင်းအချက်အလက်များကိုရယူပါ
SQL Execution တွင်သတိပေးချက်များရှိ, မရှိစစ်ဆေးပါ
ထိခိုက်သောအတန်းအရေအတွက်ကိုရယူပါ (ဥပမာ, အသစ်ပြောင်းခြင်းသို့မဟုတ်ဖျက်ခြင်းပြီးနောက်)
MySQLI :: $ INFO သည် နောက်ဆုံး SQL ကြေငြာချက်ကိုအကောင်အထည်ဖော်ရန်နှင့်သက်ဆိုင်သောစာတစ်စောင်ကိုပြန်ပို့ပေးသောစာမူတစ်ခုတည်းပိုင်ဆိုင်မှုဖြစ်သည်။ အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// ဒေတာဘေ့စ် connection တစ်ခုဖန်တီးပါ</span></span><span>
</span><span><span class="hljs-variable">$mysqli</span></span><span> = </span><span><span class="hljs-keyword">new</span></span><span> </span><span><span class="hljs-title function_ invoke__">mysqli</span></span><span>(</span><span><span class="hljs-string">"localhost"</span></span><span>, </span><span><span class="hljs-string">"username"</span></span><span>, </span><span><span class="hljs-string">"password"</span></span><span>, </span><span><span class="hljs-string">"database_name"</span></span><span>);
</span><span><span class="hljs-comment">// ဆက်သွယ်မှုအောင်မြင်မှုရှိမရှိစစ်ဆေးပါ</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$mysqli</span></span><span>->connect_error) {
</span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"ဆက်သွယ်မှုမအောင်မြင်ပါ: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->connect_error);
}
</span><span><span class="hljs-comment">// ကရိယာတန်းဆာSQLမေးမြန်း</span></span><span>
</span><span><span class="hljs-variable">$sql</span></span><span> = </span><span><span class="hljs-string">"UPDATE users SET status = 'active' WHERE last_login > '2025-01-01'"</span></span><span>;
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$mysqli</span></span><span>-></span><span><span class="hljs-title function_ invoke__">query</span></span><span>(</span><span><span class="hljs-variable">$sql</span></span><span>) === </span><span><span class="hljs-literal">TRUE</span></span><span>) {
</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်းSQLကရိယာတန်းဆာ状态</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"SQLကရိယာတန်းဆာ成功: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->info;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"SQLကရိယာတန်းဆာ失败: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->error;
}
</span><span><span class="hljs-comment">// ဆက်သွယ်မှုကိုပိတ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$mysqli</span></span><span>-></span><span><span class="hljs-title function_ invoke__">close</span></span><span>();
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>အထက်ဖော်ပြပါဥပမာတွင် update ကို ကြေငြာပြီးနောက် SQL Execution ၏အသေးစိတ်အချက်အလက်များကို MySQLi-> Info မှတစ်ဆင့်ရရှိနိုင်သည်။ အကယ်. SQL သည်အောင်မြင်စွာကွပ်မျက်ခံရလျှင်၎င်းသည်အကျိုးသက်ရောက်မှုရှိသောအတန်းအရေအတွက်နှင့်ပတ်သက်သောသတင်းအချက်အလက်အပိုင်းအစတစ်ခုကိုပြန်လည်ရရှိခဲ့သည်။ အကယ်. SQL ကွပ်မျက်မှုမအောင်မြင်ပါကအမှားအယွင်းတစ်ခုထုတ်ပြန်သည်။
MySQLI :: $ အချက်အလက်များသည် များသောအားဖြင့်အောက်ပါတို့ပါ 0 င်သည်။
ထိခိုက်သောအတန်းအရေအတွက် - ဥပမာ, ဥပမာအားဖြင့်, ဥပမာ, ထည့်သွင်းခြင်း , မွမ်းမံခြင်း , ဖျက်ခြင်း, ဖျက်ခြင်း စ သည့်စစ်ဆင်ရေးများ,
သတိပေးချက်အရေအတွက် - SQL ကိုကွပ်မျက်ခံရစဉ်သတိပေးချက်တစ်ခုဖြစ်လာပါကပြန်လာသောအကြောင်းအရာများသည်သတိပေးချက်အရေအတွက်ကိုပြသနိုင်သည်။
အခြားစုံစမ်းမှုအချက်အလက်များ - တိကျသောမေးမြန်းချက်များအတွက် MySQLI :: $ အချက်အလက်များသည် အခြားအသေသတ်ခြင်းဆိုင်ရာသတင်းအချက်အလက်များကိုပြန်လည်ပေးပို့နိုင်သည်။
ဥပမာအားဖြင့် :
<span><span><span class="hljs-variable">$sql</span></span><span> = </span><span><span class="hljs-string">"UPDATE users SET status = 'active' WHERE last_login > '2025-01-01'"</span></span><span>;
</span><span><span class="hljs-variable">$mysqli</span></span><span>-></span><span><span class="hljs-title function_ invoke__">query</span></span><span>(</span><span><span class="hljs-variable">$sql</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$mysqli</span></span><span>->info; </span><span><span class="hljs-comment">// ပြန်လာ:Records updated: 50</span></span><span>
</span></span>ဤဥပမာတွင် MySQLI :: ROCKLI :: ROCKO သည် မှတ်တမ်းများကိုမွမ်းမံကြောင်းညွှန်ပြသည့်သတင်းစကားကိုပြန်ပို့လိမ့်မည်။
SQL Execution status ကိုအချိန်နှင့်တပြေးညီစောင့်ကြည့်လေ့လာခြင်းကိုနားလည်သဘောပေါက်ရန် MySQLI :: $ INFO မှတစ်ဆင့်စုံစမ်းမှုအချက်အလက်များကိုစဉ်ဆက်မပြတ်ရယူနိုင်ရန်နှင့် SQL စစ်ဆင်ရေးတစ်ခုစီကိုအကောင်အထည်ဖော်ပြီးနောက်စစ်ဆေးနိုင်သည်။ ဖွံ့ဖြိုးတိုးတက်မှုအဆင့်တွင်ဤနည်းလမ်းသည်အထူးသဖြင့် debugging သို့မဟုတ်စွမ်းဆောင်ရည်ခွဲခြမ်းစိတ်ဖြာခြင်းအတွက်သင့်လျော်သည်။
ဥပမာအားဖြင့်, SQL Conflesies အမျိုးမျိုးကိုအသုတ်တွင်လုပ်ဆောင်သောအခါ MySQLI :: After ၏ပြန်လည်ထူထောင်ရေးကိုမှတ်တမ်းတင်ခြင်းဖြင့်စစ်ဆင်ရေးတစ်ခုစီ၏အကျိုးသက်ရောက်မှုကိုကျွန်ုပ်တို့စောင့်ကြည့်နိုင်သည်။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$queries</span></span><span> = [
</span><span><span class="hljs-string">"INSERT INTO users (name, email) VALUES ('John Doe', '[email protected]')"</span></span><span>,
</span><span><span class="hljs-string">"UPDATE users SET status = 'inactive' WHERE last_login < '2024-01-01'"</span></span><span>,
</span><span><span class="hljs-string">"DELETE FROM users WHERE id = 101"</span></span><span>
];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$queries</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$query</span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$mysqli</span></span><span>-></span><span><span class="hljs-title function_ invoke__">query</span></span><span>(</span><span><span class="hljs-variable">$query</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"မေးမြန်းကရိယာတန်းဆာ成功: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->info . </span><span><span class="hljs-string">"<br>"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"မေးမြန်းကရိယာတန်းဆာ失败: "</span></span><span> . </span><span><span class="hljs-variable">$mysqli</span></span><span>->error . </span><span><span class="hljs-string">"<br>"</span></span><span>;
}
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>ဤဥပမာတွင်ကျွန်ုပ်တို့သည်စုံစမ်းမှုတစ်ခုကိုလုပ်ဆောင်တိုင်းကိုအကောင်အထည်ဖော်သည့်အခါတိုင်းကျွန်ုပ်တို့သည် SQL ကြေငြာချက်အား ဒေါ်လာ MySQLI-> Info မှတဆင့်ကွပ်မျက်မှုအဆင့်အတန်းကိုချက်ချင်းထုတ်ပေးလိမ့်မည်။ ၎င်းသည် Batch Operations သို့မဟုတ်ရှုပ်ထွေးသောငွေပေးငွေယူသည့်အပြောင်းအလဲအတွက်အလွန်အထောက်အကူပြုသည်။
နောက်ဆုံး SQL ကြေငြာချက်မှသာသက်ဆိုင်သည် ။ အကယ်. သင်သည်တူညီသော script တစ်ခုတွင်မေးမြန်းချက်မျိုးစုံကိုအကောင်အထည်ဖော်လျှင်နောက်ဆုံးမေးမြန်းမှု၏ကွပ်မျက်အချက်အလက်ကိုသာပြန်လည်ပေးလိမ့်မည်။
ဒေတာဘေ့စ်ဆက်သွယ်မှုပြ problem နာ - ဒေတာဘေ့စ် connection နှင့်ပြ a နာတစ်ခုရှိလျှင်, $ INFO သည် မှန်ကန်သောသတင်းအချက်အလက်များကိုမပြန်နိုင်ပါက၎င်းကိုအသုံးပြုသည့်အခါဒေတာဘေ့စ်ဆက်သွယ်မှုသည်ပုံမှန်အတိုင်းဖြစ်သည်။
အမှားများနှင့်သတိပေးချက်များ - MySQLI :: $ အချက်အလက်ကို အဓိကအားဖြင့်ကွပ်မျက်မှုခြုံငုံသုံးသပ်ချက်ရရှိရန်အဓိကအားဖြင့်အသုံးပြုသည်။ အသေးစိတ်အချက်အလက်များကိုသင်လိုအပ်ပါက MySQLI :: $ error errorribute attribute ကိုသုံးသင့်သည်။
MySQLI :: $ INFO သည်အလွန်လက်တွေ့ကျသောပိုင်ဆိုင်မှုဖြစ်သည်။ developer များက SQL Queries ၏ကွပ်မျက်မှုအဆင့်အတန်းကိုအချိန်နှင့်တပြေးညီစစ်ဆေးရန်ကူညီနိုင်သည့်အလွန်လက်တွေ့ကျသောပိုင်ဆိုင်မှုဖြစ်သည်။ ဤပစ္စည်းများကိုအသုံးပြုခြင်းအားဖြင့် SQL operations များကိုလုပ်ဆောင်ပြီးနောက်အသေးစိတ်အချက်အလက်များကိုသင်ရရှိနိုင်ပါသည်။ အထူးသဖြင့်ရှုပ်ထွေးသောဒေတာဘေ့စ်စစ်ဆင်ရေးများနှင့်အသုတ်မေးမြန်းချက်များတွင် MySQLI :: MySQLI :: Developer များနှင့်သက်ဆိုင်သောပြုပြင်ပြောင်းလဲမှုများပြုလုပ်ရန်ဒေါ်လာအချက်အလက်သည် အဓိကတုံ့ပြန်ချက်အချက်အလက်များကိုပေးနိုင်သည်။
အကယ်. သင်သည် PPP application ကိုတည်ဆောက်နေပါက MySQLI နှင့်ပေါင်းစပ်ပြီးအချိန်နှင့်တပြေးညီစောင့်ကြည့်လေ့လာခြင်းသည်သင်၏ debugging နှင့် optimization ကိုအလွန်တိုးတက်စေလိမ့်မည်။