0 က်ဘ်အပလီကေးရှင်းများကိုတီထွင်သောအခါတစ်ပြိုင်တည်းထိန်းချုပ်မှုနှင့်ဒေတာဘေ့စ်၏သော့ခတ်ခြင်းယန္တရားသည်အလွန်အရေးကြီးသည်။ အထူးသဖြင့်တစ်ပြိုင်နက်တည်းတစ်ပြိုင်နက်တည်းဖြစ်စဉ်များတွင်တစ်ပြိုင်နက်တည်းအချက်အလက်များလက်လှမ်းမီမှုသည်စနစ်တကျကိုင်တွယ်ခြင်းမကိုင်တွယ်ပါကဒေတာရှေ့နောက်ညီညွတ်မှုနှင့်သမာဓိရှိမှုပြ issues နာများကိုဖြစ်ပေါ်စေနိုင်သည်။ PHP ရှိ Oracle Control's of Oracle Database ၏ Oracle Database ၏ Oracle Database ၏ Oracle Database ၏ Lock ယန္တရားကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကမိတ်ဆက်ပေးလိမ့်မည်။
အဆိုးမြင် 0 င်ကျကျတစ်ပြိုင်နက်တည်းထိန်းချုပ်မှုသည်အခြားအသုံးပြုသူများကိုတစ်ချိန်တည်းတွင်တူညီသောအချက်အလက်များကိုပြုပြင်ခြင်းမှကာကွယ်ရန်ခွဲစိတ်ကုသမှုမပြုမီအချက်အလက်များကိုသော့ခတ်ရန်ရည်ရွယ်သည်။ Oracle Database တွင်အဆိုးမြင် 0 င်စားသောတစ်ပြိုင်နက်တည်းထိန်းချုပ်မှုရရှိရန် update ကြေငြာချက်အတွက်သင်အသုံးပြုနိုင်သည်။
PHP တွင်အဆိုးမြင် 0 င်သောတစ်ပြိုင်နက်တည်းထိန်းချုပ်ခြင်းကို အသုံးပြု. code sphagy:
<?php
// ဆက်Oracleဒေတာဘေ့စ်
$conn = oci_connect('username', 'password', 'database');
// updated နှင့်သော့ခတ်ရန်လိုအပ်သည့်ဒေတာကိုမေးမြန်းပါ
$query = "SELECT * FROM my_table WHERE id = :id FOR UPDATE";
$stmt = oci_parse($conn, $query);
$id = 1;
oci_bind_by_name($stmt, ':id', $id);
oci_execute($stmt);
// ဒေတာကို update လုပ်ပါ
$query = "UPDATE my_table SET field = :field WHERE id = :id";
$stmt = oci_parse($conn, $query);
$field = 'new value';
oci_bind_by_name($stmt, ':field', $field);
oci_bind_by_name($stmt, ':id', $id);
oci_execute($stmt);
// 提交事务并关闭ဆက်
oci_commit($conn);
oci_close($conn);
?>
အထက်ဖော်ပြပါကုဒ်များတွင်နောက်ဆုံးပေါ်အဆင့်မြှင့်တင်ရန်လိုအပ်သည့်ဒေတာအတန်းများကို Select လုပ်ခြင်းအတွက်သော့ခတ်ထားသည်။ နောက်ဆုံးတွင် UPDATICSITIONS () နှင့်ဒေတာဘေ့စ်၏ဆက်သွယ်မှုကိုပိတ်ထားသည် ။
အဆိုးမြင်စိတ်ခံဆချက်တစ်ပြိုင်နက်တည်းထိန်းချုပ်မှုနှင့်မတူဘဲအကောင်းမြင်စိတ်ခံစားမှုသည်ခွဲစိတ်ကုသမှုမတိုင်မီသော့ခတ်မထားသော်လည်းအချက်အလက်ပြုပြင်ထားသောအချက်အလက်များကိုအခြားအသုံးပြုသူများကပြုပြင်မွမ်းမံခြင်းရှိမရှိစစ်ဆေးသည်။ Oracle, အကောင်းမြင်သဘောထားကိုကြေညာချက် အကြားဗားရှင်း များမှတဆင့်အောင်မြင်နိုင်သည်။
PHP တွင်အကောင်းမြင်သည့်တစ်ပြိုင်နက်တည်းထိန်းချုပ်ခြင်းကို အသုံးပြု. ကုဒ်နမူနာတစ်ခုမှာဤတွင်ဖော်ပြထားသည်။
<?php
// ဆက်Oracleဒေတာဘေ့စ်
$conn = oci_connect('username', 'password', 'database');
// ဒေတာရှာဖွေခြင်းနှင့်ဗားရှင်းသတင်းအချက်အလက်ရယူပါ
$query = "SELECT * FROM my_table WHERE id = :id";
$stmt = oci_parse($conn, $query);
$id = 1;
oci_bind_by_name($stmt, ':id', $id);
oci_execute($stmt);
$row = oci_fetch_array($stmt, OCI_ASSOC);
$oldVersion = $row['VERSION'];
// ဒေတာကို update လုပ်ပါ
$newVersion = $oldVersion + 1;
$query = "UPDATE my_table SET field = :field, version = :newVersion WHERE id = :id AND version = :oldVersion";
$stmt = oci_parse($conn, $query);
$field = 'new value';
oci_bind_by_name($stmt, ':field', $field);
oci_bind_by_name($stmt, ':newVersion', $newVersion);
oci_bind_by_name($stmt, ':id', $id);
oci_bind_by_name($stmt, ':oldVersion', $oldVersion);
oci_execute($stmt);
// အဆင့်မြှင့်ထားသောအတန်းအရေအတွက်ကိုစစ်ဆေးပါ
if (oci_num_rows($stmt) == 0) {
// အသစ်ပြောင်းခြင်းမအောင်မြင်ပါ,ဒေတာကိုပြုပြင်ထားသည်
oci_rollback($conn);
} else {
// အောင်မြင်စွာအသစ်ပြောင်းခြင်း
oci_commit($conn);
}
// 关闭ဆက်
oci_close($conn);
?>
ဤကုဒ်ပါ 0 င်သည့်ဥပမာတွင်အချက်အလက်များကို ဦး စွာမေးမြန်းပြီးဗားရှင်းအချက်အလက်ဟောင်းများကိုရယူပါ။ ထို့နောက်အဆင့်မြှင့်တင်သည့်အခါ, မည်သည့် အပိုဒ်တွင်ဗားရှင်းနံပါတ်ကို အသုံးပြု. ဒေတာကို အသုံးပြု. ပြောင်းလဲခြင်းရှိမရှိစစ်ဆေးပါ။ အကယ်. ဗားရှင်းနံပါတ်များသည်ကိုက်ညီမှုမရှိပါကအချက်အလက်များကိုအခြားအသုံးပြုသူများကပြုပြင်မွမ်းမံပြီး update လည်ပတ်မှုပျက်ပြားသွားလိမ့်မည်။ မဟုတ်ရင်တင်သွင်းမှုစစ်ဆင်ရေးလုပ်ဆောင်ပါ။
PHP တွင် Oracle databases များကို PHP တွင်အသုံးပြုသောအခါ Pessimistic Concurnency Controlt နှင့်အကောင်းမြင်သဘောထားကိုထိန်းချုပ်နိုင်သည်။ အကောင်းမြင်သောတစ်ပြိုင်နက်တည်းထိန်းချုပ်မှုသည်တစ်ပြိုင်နက်တည်းပ conflicts ိပက်ခများကိုသော့ခလောက်များဖြည့်စွက်ခြင်းဖြင့်အသွင်ကူးပြောင်းရေးများကိုဖြည့်စွက်ခြင်းအားဖြင့်အသွင်ကူးပြောင်းရေးများကိုဖြည့်ဆည်းပေးခြင်းဖြင့်ရှောင်ရှားနိုင်သည်။ စီးပွားရေးလိုအပ်ချက်အပေါ် အခြေခံ. သင့်လျော်သောတစ်ပြိုင်နက်တည်းထိန်းချုပ်မှုမဟာဗျူဟာကိုရွေးချယ်ခြင်းသည်ဒေတာဘေ့စ်၏တည်ငြိမ်မှုနှင့်လျှောက်လွှာ၏ထိရောက်မှုအတွက်အရေးပါသည်။
ဤဆောင်းပါးသည် PHP ရှိ PHP ရှိတစ်ပြိုင်နက်တည်း Oracle Database ၏ Oracle Database ၏သော့ခတ်ထားသည့် Oracle ဒေတာဘေ့စ်၏သော့ခတ်ခြင်းယန္တရားကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုမိတ်ဆက်ပေးသည်။