လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> သင်သိပါလား? MySQLI :: $ errno အလိုအလျောက်ပြန်လည်စတင်လိမ့်မည်မဟုတ်ပါ။ ၎င်းကိုအသုံးပြုသည့်အခါဤစာသတ်ရန်သတိထားပါ

သင်သိပါလား? MySQLI :: $ errno အလိုအလျောက်ပြန်လည်စတင်လိမ့်မည်မဟုတ်ပါ။ ၎င်းကိုအသုံးပြုသည့်အခါဤစာသတ်ရန်သတိထားပါ

M66 2025-06-23

PHP's MySQLI Extension :: MySQLI :: $ errno သည် နောက်ဆုံးဒေတာဘေ့စ်စစ်ဆင်ရေးမှအမှားကုဒ်များကိုသိုလှောင်ထားသည့်အလွန်အရေးကြီးသောပစ္စည်းတစ်ခုဖြစ်သည်။ များသောအားဖြင့်ဒေတာဘေ့စ်စစ်ဆင်ရေးသည်အောင်မြင်မှုရှိ, သို့သော်မှတ်သားဖွယ်အချက်မှာ MySQLI :: $ errno တစ်ခုရှိသည်။ ၎င်းသည်မနှောင့်ယှက်နိုင်သောအမှားများကိုဖြစ်ပေါ်စေနိုင်သည်။ ဒီနေ့ဒီကိစ်စကိုဆွေးနွေးကြပါစို့။

1 ။ MySQLI :: $ errno ၏အခန်းကဏ်။

MySQLI :: $ errno သည် MySQLI အတန်းအစား၏ပိုင်ဆိုင်မှုတစ်ခုဖြစ်ပြီးနောက်ဆုံးဒေတာဘေ့စ်စစ်ဆင်ရေး၏အမှားကုဒ်ကိုပြန်ပေးသည့် MySQLI အတန်းအစား၏ပိုင်ဆိုင်မှုဖြစ်သည်။ ဒေတာဘေ့စ်စစ်ဆင်ရေးတွင်အမှားမရှိပါက MySQLI :: $ errno သည် 0 င်ပါလိမ့်မည်။ အစား၎င်းသည်သတ်သတ်မှတ်မှတ်အမှားအမျိုးအစားကိုညွှန်ပြသည့်အမှားကုဒ်တစ်ခုကိုပြန်ပို့လိမ့်မည်။

ဥပမာအားဖြင့် , စုံစမ်းမှုတစ်ခုလုပ်ဆောင်သောအခါ, အကယ်. စုံစမ်းမှုမအောင်မြင်ပါကသက်ဆိုင်ရာအမှားကုဒ်ကိုပြန်ပို့သည်။

 <?php
$mysqli = new mysqli("localhost", "user", "password", "database");

if ($mysqli->connect_errno) {
    echo "ဆက်သွယ်မှုမအောင်မြင်ပါ: " . $mysqli->connect_error;
    exit();
}

$query = "SELECT * FROM non_existent_table";
$mysqli->query($query);

if ($mysqli->errno) {
    echo "စုံစမ်းမှုမအောင်မြင်ပါ,အမှားကုဒ်:" . $mysqli->errno;
}
?>

အထက်ဖော်ပြပါဥပမာတွင်အမှားတစ်ခုပြုလုပ်နေစဉ်အမှားတစ်ခုဖြစ်ပါက $ MySQLI-> ERRNO သည် အမှားကိုညွှန်ပြသောနံပါတ်တစ်ခုကိုပြန်ပေးလိမ့်မည်။

2 ။ အဓိကမေးခွန်း - MySQLI :: $ errno သည် အလိုအလျောက်ပြန်လည်စတင်လိမ့်မည်မဟုတ်ပါ

MySQLI :: $ errno သည် ဒေတာဘေ့စ်လည်ပတ်မှုတစ်ခုချင်းစီတွင်အလိုအလျောက်မရှင်းလင်းပါကပြ problem နာမှာတွေ့ရသည်။ အချို့ဖြစ်ရပ်များတွင်အမှားအယွင်းများပေါ်ပေါက်လာနိုင်သည်, နောက်ဆက်တွဲဒေတာဘေ့စ်လုပ်ငန်းများ၌ပျက်ကွက်မှုအဖြစ်မှားယွင်းစွာမှားယွင်းစွာပြုလုပ်နေသည်။ အချို့သောစစ်ဆင်ရေးများကိုကိုင်တွယ်ရာတွင်သင်အလွန်ရှုပ်ထွေးစေနိုင်သည်, နောက်ဆက်တွဲစစ်ဆင်ရေးများတွင်အမှားမရှိလျှင်ပင် $ MySQLI-> ERRNO သည် နောက်ဆုံးအမှား၏အမှားကုဒ်ကိုပြန်ပို့သည်။

ဥပမာအားဖြင့်:

 <?php
$mysqli = new mysqli("localhost", "user", "password", "database");

$query1 = "SELECT * FROM valid_table";
$mysqli->query($query1);

$query2 = "SELECT * FROM non_existent_table";
$mysqli->query($query2);

// အခုအချိန်တွင်,$mysqli->errno 依然会返回上次错误查询的အမှားကုဒ်,而不是当前查询的အမှားကုဒ်
if ($mysqli->errno) {
    echo "စုံစမ်းမှုမအောင်မြင်ပါ,အမှားကုဒ်:" . $mysqli->errno;
}
?>

အထက်ဖော်ပြပါကုဒ်များတွင် ဒေါ်လာ MySQLI-> ERRNO သည် ဒုတိယအကြိမ်မေးမြန်းမှုပျက်ကွက်မှု (မတည်ရှိသည့်ဇယားတစ်ခုရှာဖွေခြင်း) ကိုချက်ချင်းမပြနိုင်ပါ။ တကယ်တော့ဒါဟာပထမစုံစမ်းမှုအတွက်အမှားကုဒ်ကို (ဆိုရင်) ကိုပြသနိုင်ပြီး Misjudgment ကိုဖြစ်စေတယ်။

3 ။ ဒီပြ problem နာကိုဘယ်လိုရှောင်ရှားရမလဲ

ဤအပိုင်းကိုရှောင်ရှားရန်အကောင်းဆုံးသောအရာမှာ MySQLI :: database စစ်ဆင်ရေးပြုလုပ်သည့်အခါတိုင်း MySQLI :: errno ကို reset လုပ်ရန်ဖြစ်သည်။ MySQLI :: Clears () နည်းလမ်းများမှတဆင့်အမှားကုဒ်များအားလုံးကိုရှင်းလင်းနိုင်ပါသည်။

 <?php
$mysqli = new mysqli("localhost", "user", "password", "database");

$query1 = "SELECT * FROM valid_table";
$mysqli->query($query1);

// ကိုယ်တိုင်ရှင်းရှင်းလင်းလင်းအမှားအယွင်းများ
$mysqli->clear_errors();

$query2 = "SELECT * FROM non_existent_table";
$mysqli->query($query2);

if ($mysqli->errno) {
    echo "စုံစမ်းမှုမအောင်မြင်ပါ,အမှားကုဒ်:" . $mysqli->errno;
}
?>

ဤနည်းအားဖြင့် $ MySQLI-> ERRNO သည် Querno သည်စုံစမ်းမှုတစ်ခုချင်းစီမတိုင်မီသန့်ရှင်းကြောင်းသေချာစေနိုင်သည်။

4 ။ နိဂုံးချုပ်

MySQLI :: $ errno သည် MySQLI တွင်ဒေတာဘေ့စ်အမှားအယွင်းများကိုဖော်ထုတ်ရန်နှင့်ကိုင်တွယ်ရန်ကူညီနိုင်သည်။ သို့သော်၎င်းတွင်ဝှက်ထားသောတွင်းတစ်ခုရှိသည်။ ၎င်းသည်အလိုအလျောက်ပြန်လည်သတ်မှတ်မည်မဟုတ်ပါ။ ဆိုလိုသည်မှာသင်သည်အမှားကုဒ်ကိုကိုယ်တိုင်ရှင်းရှင်းလင်းလင်းမရှင်းလင်းပါကအမှားကုဒ်ကိုဆက်လက်ထိန်းသိမ်းထားနိုင်ပြီးနောက်ဆက်တွဲစစ်ဆင်ရေး၏အမှားကိုင်တွယ်မှုကိုထိခိုက်စေနိုင်သည်။ ၎င်းကိုရှောင်ရှားရန် MySQLI :: Clears :: Encrourors ()) ကို သုံး. database စစ်ဆင်ရေးမလုပ်ဆောင်မီအမှားကုဒ်ကိုကိုယ်တိုင်ရှင်းလင်းရန်အကြံပြုပါသည်။

  • သက်ဆိုင်သောတက်(ဂ်)များ:

    mysqli