လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> MySQLI :: Get_warenings အပေါ် အခြေခံ. ဒေတာဘေ့စ်သင်ကြားမှုအမှု၏ဒီဇိုင်း

MySQLI :: Get_warenings အပေါ် အခြေခံ. ဒေတာဘေ့စ်သင်ကြားမှုအမှု၏ဒီဇိုင်း

gitbox 2025-05-29

MySQL databases များကို PHP တွင်လည်ပတ်သောအခါ MySQLI တိုးချဲ့မှုသည်ဒေတာဘေ့စ်ဆက်သွယ်မှုများ, MySQLI :: Get_warenings သည်အတော်အတန်နက်နက်ရှိုင်းရှိုင်းနက်နက်ရှိုင်းရှိုင်းဖြစ်သော်လည်း developer များကဒေတာဘေ့စ်စစ်ဆင်ရေးများအတွင်းထုတ်လုပ်သောသတိပေးချက်များကိုရရှိသောသတိပေးချက်များကိုရရှိစေသည်။ သွန်သင်ရာတွင်ဤလုပ်ဆောင်မှုကိုဆင်ခြင်တုံတရားအသုံးပြုခြင်းသည်ဒေတာဘေ့စ်စစ်ဆင်ရေးအသေးစိတ်အချက်အလက်များကိုနားလည်မှုနည်းပါးစေရုံသာမကအလားအလာရှိသောပြ problems နာများကိုပိုမိုကောင်းမွန်စွာဖြေရှင်းနိုင်ရန်လည်းကူညီနိုင်သည်။

ဤဆောင်းပါးသည် MySQLI :: Get_warennings ကို အခြေခံ. ကျောင်းသားများအားပညာပေးနည်းစနစ်များကို အခြေခံ. Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master Master


1 ။ အခြေခံသရုပ်ပြ - SQL Execution ပြီးနောက်သတိပေးသတင်းအချက်အလက်ကိုဖမ်းယူခြင်း

 <?php
$mysqli = new mysqli("gitbox.net", "username", "password", "testdb");

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

// ထုတ်ပေးနိုင်သည့်သတိပေးချက်ကိုလုပ်ဆောင်ပါ SQL အသေအချာပေြာဆိုချက်,ဥပမာအားဖြင့်အလွန်ရှည်လျားသော string ကိုထည့်သွင်း
$sql = "INSERT INTO users (username) VALUES ('" . str_repeat("a", 300) . "')";
$mysqli->query($sql);

// သတိပေးသတင်းအချက်အလက်ရယူပါ
$warnings = $mysqli->get_warnings();
if ($warnings) {
    do {
        echo "အသိပေး: ({$warnings->errno}) {$warnings->message}\n";
    } while ($warnings->next());
} else {
    echo "无အသိပေး。\n";
}

$mysqli->close();
?>

ဤသရုပ်ပြသည်ကျောင်းသားများကိုကျောင်းသားများအားပျက်ကွက်ခြင်းမရှိဘဲအလားအလာရှိသောပြ problems နာများစုဆောင်းခြင်းကိုရှောင်ရှားရန်အချိန်မီသတိပေးခြင်းနှင့်မည်သို့ကိုင်တွယ်ရမည်ကိုနားလည်ရန်ခွင့်ပြုရန်ခွင့်ပြုသည်, သို့သော်လျှို့ဝှက်အန္တရာယ်များရှိနိုင်သည်။


2 ။ သင်ကြားရေးကိစ္စ - လယ်ကွင်းအချက်အလက်အမျိုးအစားများကိုပြုပြင်ခြင်းကြောင့်သတိပေးခြင်း

ဒေတာဘေ့စ်ရှိနယ်ပယ်တစ်ခုမှာ Varchar (10) နှင့်ထည့်သွင်းထားသောအချက်အလက်များသည်အရှည်ထက်ကျော်လွန်နေပြီး MySQL သည်သတိပေးချက်တစ်ခုပြုလုပ်လိမ့်မည်။ သွန်သင်သောအခါသင်တုပရန်အောက်ပါကုဒ်ကိုသုံးနိုင်သည်။

 <?php
$mysqli = new mysqli("gitbox.net", "username", "password", "testdb");

$sql = "ALTER TABLE test_table MODIFY COLUMN name VARCHAR(10)";
$mysqli->query($sql);

$sql = "INSERT INTO test_table (name) VALUES ('ဒါကဇာတ်ကောင်ဆယ်ယောက်ထက်ပိုတဲ့ string တစ်ခုပါ')";
$mysqli->query($sql);

// 检查အသိပေး
$warnings = $mysqli->get_warnings();
if ($warnings) {
    do {
        echo "အသိပေး: ({$warnings->errno}) {$warnings->message}\n";
    } while ($warnings->next());
} else {
    echo "无အသိပေး。\n";
}

$mysqli->close();
?>

ဤကိစ္စတွင်ကျောင်းသားများသည်ကွင်းဆင်းလေ့စွန့်ခွာများအတွက်သတိပေးချက်များကိုအမြင်အာရုံကြည့်ရှုခြင်းနှင့်သတိပေးချက်များအပေါ် အခြေခံ. ဒီဇိုင်းကိုမည်သို့ညှိနှိုင်းရမည်ကိုလေ့လာနိုင်သည်။


3 ။ အသုတ်တွင်ဒေတာများကိုထည့်သွင်းသောအခါသတိပေးချက်များစွာကိုဖမ်းယူပါ

MySQLI :: Get_warenings သည် အချက်အလက်မျိုးစုံကိုအသုတ်တွင်ထည့်သွင်းထားသောအချက်အလက်များထည့်သွင်းသောအခါသတိပေးချက်များအားလုံးကိုသိမ်းဆည်းရန်ကူညီနိုင်သည်။ အချို့မှာပြ problem နာဖြစ်နိုင်သည်။ ဥပမာများမှာအောက်ပါအတိုင်းဖြစ်သည် -

 <?php
$mysqli = new mysqli("gitbox.net", "username", "password", "testdb");

$sql = "INSERT INTO products (name, price) VALUES 
    ('အထွက်ပစ္စည်းများA', 100),
    ('အထွက်ပစ္စည်းများB', -50),  -- 假设负数价格是အသိပေး条件
    ('အထွက်ပစ္စည်းများC', 200)";
$mysqli->query($sql);

$warnings = $mysqli->get_warnings();
if ($warnings) {
    do {
        echo "အသိပေး: ({$warnings->errno}) {$warnings->message}\n";
    } while ($warnings->next());
} else {
    echo "无အသိပေး。\n";
}

$mysqli->close();
?>

ဤသွန်သင်ချက်ဇာတ်လမ်းတစ်ပုဒ်မှတစ်ဆင့်ကျောင်းသားများသည်စုစည်းရေးနှင့်ပတ်သက်သောသတိပေးချက်များကိုအပြီးသတ်စစ်ဆင်ရေးများပြုလုပ်နိုင်သည်ကိုလေ့လာနိုင်သည်။


4 ။ ပြည့်စုံသောအမှု - အမှားအယွင်းများကိုပေါင်းစပ်ခြင်းနှင့်သတိပေးကိုင်တွယ်မှုအတွက်အကောင်းဆုံးအလေ့အကျင့်များ

ဒေတာဘေ့စ်လုပ်ငန်းစဉ်အပြည့်အစုံတွင်အမှားအယွင်းများနှင့်သတိပေးချက်များကိုစနစ်တကျကိုင်တွယ်ရန်လိုအပ်သည်။ သရုပ်ပြကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 <?php
$mysqli = new mysqli("gitbox.net", "username", "password", "testdb");

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

$sql = "UPDATE orders SET status = 'အပြီးသတ်' WHERE order_id = 123";
if (!$mysqli->query($sql)) {
    echo "Execute အမှား: " . $mysqli->error;
} else {
    $warnings = $mysqli->get_warnings();
    if ($warnings) {
        do {
            echo "အသိပေး: ({$warnings->errno}) {$warnings->message}\n";
        } while ($warnings->next());
    } else {
        echo "စစ်ဆင်ရေးအောင်မြင်သောဖြစ်ပါတယ်,无အသိပေး。\n";
    }
}

$mysqli->close();
?>

ဤကိစ္စသည်အမှန်တကယ်စီမံကိန်းများတွင်ကျောင်းသားများကြုံတွေ့ရမည့်ပုံမှန်ဇာတ်လမ်းတစ်ပုဒ်ဖြစ်သည်။ ၎င်းသည်အမှားများနှင့်သတိပေးချက်များကိုခွဲခြား။ ကွဲပြားခြားနားသောတုန့်ပြန်မှုအစီအမံများပြုလုပ်ရန်သူတို့ကိုခွဲခြားရန်ကူညီနိုင်သည်။


အကျဉ်းချုပ်

MySQLI :: Get_warenings သည် Evillemers သည်အောင်မြင်သောကွပ်မျက်ခြင်းနောက်ကွယ်တွင်ဝှက်ထားသောပုန်းအောင်းနေသည့်သတိပေးချက်များကိုဖမ်းယူနိုင်သည့်သတိပေးစာများကိုဖမ်းယူရန်ကူညီပေးသောထိရောက်သောကိရိယာတစ်ခုဖြစ်သည်။ ဒေတာဘေ့စ်သင်ကြားခြင်းတွင်အထက်ပါလက်တွေ့သရုပ်ပြခြင်းမှတစ်ဆင့်ကျောင်းသားများသည်အသေးစိတ်အပြုအမူများနှင့်ဒေတာဘေ့စ်၏အသေးစိတ်အချက်အလက်များနှင့်ပိုမိုအားကောင်းတဲ့ဒေတာဘေ့စ်ပရိုဂရမ်းမင်းအလေ့အကျင့်များကိုပိုမိုနက်ရှိုင်းစွာနားလည်နိုင်သည်။ ဤအမှုများကိုသင်၏သွန်သင်ချက်ကိုအထောက်အကူပြုလိမ့်မည်ဟုမျှော်လင့်ပါသည်။