Excel VBA မှတဆင့် Database တွင်အသုံးပြုသော SQL Statement အတွက် Quoted Strings မှ မည်သို့လွတ်မြောက်မည်နည်း။

ယခုမျှဝေပါ-

SQL Server s ကိုခွဲခြားသတ်မှတ်ရန် single quotes အတွဲများကိုအသုံးပြုသည်။tart နှင့် string တစ်ခု၏အဆုံး။ 'Mrs Brown's Boys' ကို ဒေတာဘေ့စ်ဇယားတစ်ခုထဲသို့ ထည့်သွင်းခြင်းသည် ကိုးကားချက်တစ်ခုတည်းတွင် စာကြောင်းနှစ်ကြောင်းကို ရည်ညွှန်းသောကြောင့်၊ တစ်ခုသည် မပြည့်စုံသောကြောင့်ဖြစ်သည်။ ap အတွက် escape character တစ်ခု လိုအပ်ပါသည်။ostBrown ပြီးနောက် rophe ။ ဤကွဲလွဲချက်ကိုဖြေရှင်းရန် ဤဆောင်းပါးသည် စိတ်ကြိုက် VBA လုပ်ဆောင်ချက်ကို အသုံးပြုခြင်းအား စူးစမ်းလေ့လာသည်။

ဤဆောင်းပါးသည် စာဖတ်သူတွင် Developer ribbon ကိုပြသထားပြီး VBA Editor နှင့် ရင်းနှီးသည်ဟု ယူဆပါသည်။ မဟုတ်ပါက၊ ကျေးဇူးပြု၍ Google “Excel Developer Tab” သို့မဟုတ် “Excel Code Window”။

ဤနေရာတွင် "ဒေတာဘေ့စ်" ဟူသောအသုံးအနှုန်းသည် "စက်မှုစွမ်းအား" ကဲ့သို့သော ဒေတာဘေ့စ်များနှင့် သက်ဆိုင်ပါသည်။ SQL Server နှင့် Oracle.

ဤလေ့ကျင့်ခန်းတွင်အသုံးပြုသော workbook ၏ဥပမာကိုတွေ့နိုင်သည်။ ဒီမှာ.

SQL စာတန်း

ap ပါဝင်ခြင်း။ostrophes (သို့မဟုတ် single quotes) သည် SQL ကြေငြာချက်တစ်ခုအတွင်းတွင် ဒေတာဘေ့စ်မန်နေဂျာမှ ပြန်လာသော အောက်ပါအမှားကို ပေးဆောင်သည် (ဤကိစ္စတွင် O'Dowd အမည်အတွက်)ဒေတာဘေ့စ်မန်နေဂျာမှ Error ပြန်လာသည်။

double ap ဖြစ်သည့် escape character တစ်ခု လိုအပ်ပါသည်။ostတစ်ခုတည်းအစား rophe။ ထို့ကြောင့် O”Dowd သည် ဒေတာဘေ့စ်အတွက် လက်ခံနိုင်ဖွယ်ရှိသည်။ O'Dowd မဟုတ်ပါ။

အဆိုပါ function ကို

ဖမ်းယူရေးအကွက်များတွင် ap တစ်ခုပါ၀င်သည်ဟု ထင်မြင်ယူဆနိုင်သည့်နေရာostrophe၊ မွမ်းမံမှုမပြုမီ စိတ်ကြိုက်လုပ်ဆောင်မှုတစ်ခုကို တည်ဆောက်နိုင်ပြီး တစ်ခုတည်းကိုးကားချက်ကို နှစ်ချက်ဖြင့် အစားထိုးနိုင်သည်။

  1. အလုပ်စာအုပ်အသစ်ကိုဖွင့်ပါ။
  1. သင်၏ကိုယ်ပိုင်ဒေတာဘေ့စ်အမည်၊ စသည်ဖြင့် ပထမစာမျက်နှာကို “အပ်ဒိတ်” ဟု အမည်ပေးပြီး အောက်ပါအတိုင်း ဖြည့်စွက်ပါ။ ဤအကွက်များကို ချိတ်ဆက်မှုစာကြောင်းတစ်ခု တည်ဆောက်ရန်အတွက် အသုံးပြုပါမည်။ SQL Server.ပထမစာရွက်ကို "အပ်ဒိတ်" ဟု အမည်ပေးပြီး ဤအတိုင်း ဖြည့်စွက်ပါ။
  2. ကုဒ်ဝင်းဒိုးကိုဖွင့်ပြီး module တစ်ခုထည့်ပါ။ ADO lib ကိုရည်ညွှန်းရန် မီနူးအရာများ >Tools >References များကိုသုံးပါ။raries ။Code Window ကိုဖွင့်ပြီး Module တစ်ခုထည့်ပါ။

အောက်ပါကုဒ်ကို module ထဲသို့ကူးထည့်ပါ။ ၎င်းသည် ဒေတာဘေ့စ်သို့ ချိတ်ဆက်သည်။

Public connDB As New ADODB.Connection Public rs As New ADODB.Recordset Public strSQL As String Public strCriteria As String Sub ConnectDatabase() If connDB.State = 1 ထို့နောက် connDB.Close On Error GoTo ErrConnect Dim strServer, strDBase, strUser, strPWD As String strServer = Sheets("Update").Range("B2") strDBase = Sheets("Update").Range("B3") strUser = Sheets("Update").Range("B4") strPWD = Sheets(" Update")။Range("B5") အကယ်၍ strPWD > "" ထို့နောက် strConnectionstring = "DRIVER={SQL Server};Server=" & strServer & ";Database=" & strDBase & ";Uid=" & strUser & ";Pwd=" & strPWD & ";Connection Timeout=30;" အခြား strConnectionstring = "DRIVER={SQL Server};SERVER=" & strServer & ";Trusted_Connection=yes;DATABASE=" & strDBase 'Windows စစ်မှန်ကြောင်းအထောက်အထားပြခြင်းပြီးဆုံးပါက connDB.ConnectionTimeout=30 connDB.Open strConnectionstring ထွက်ရန် Sub ErrConnect- MsgBox Err.Description End Sub
  1. လုပ်ဆောင်ချက်ကို module ထဲသို့ထည့်ပါ။
လုပ်ဆောင်ချက် fRemoveApostrophe(strWord As String) Dim n As Integer Dim x As Integer x = 0 အတွက် n = 0 မှ 100 x = InStr(x + 2၊ strWord, "'") 'ap ၏ အနေအထားကို ရှာပါostrophes if x = 0 ပြီးရင် Exit For If x > 0 ပြီးရင် strWord = Left(strWord, x - 1) & Chr(39) & Chr(39) & Right(strWord, Len(strWord) - (x)) နောက်တစ်ခုက ပြီးပါ n fRemoveApostrophe = strWord End Function
  1. လုပ်ဆောင်ချက်ကို လျစ်လျူရှုပါ။
Sub IgnoreFunction() ခေါ်ဆိုရန် ConnectDatabase strCriteria = Sheets("Update").Range("B10") strSQL = "tblCrewMember (LastName) တန်ဖိုးများ ('" & strCriteria & "')" MsgBox strSQL & " ထဲသို့ ထည့်သွင်းပါမည်။ ဤ SQL ထည့်သွင်းမှု ၊ fail; ap သုံးခုကို မှတ်သားပါ။ostrophes." Debug.Print strSQL 'connDB.Execute (strSQL) End Sub
  1. function ကိုသုံးပါ။
Sub UseFunction() Call ConnectDatabase strCriteria = Sheets("Update").Range("B15") strCriteria = fRemoveApostrophe(strCriteria) strSQL = "tblCrewMember (LastName) တန်ဖိုးများ ('" & strCriteria & "')" MsgBox strSQL & "သို့ ထည့်သွင်းပါ။ ဤ SQL ထည့်သွင်းမှု အောင်မြင်ပြီး O'Dowd အဖြစ် ဒေတာဇယားတွင် ပေါ်လာပါမည်။" Debug.Print strSQL 'connDB.Execute (strSQL) End Sub
  1. အဆိုပါဖြည့်စွက် Update ကို အောက်ပါအတိုင်း worksheet, starဆဲလ်မှာ တင်းရင်း A8:Update Worksheet ကိုဖြည့်ပါ။
  1. ခလုတ်များကို မက်ခရိုသို့ သတ်မှတ်ပါ။ လျစ်လျူရှုသောလုပ်ဆောင်ချက် နှင့် လုပ်ဆောင်ချက် အသီးသီး

ရလဒ်များ

မက်ဆေ့ချ်ဘောက်စ်တစ်ခုသည် ရလဒ်များကို ပြသမည်ဖြစ်သည်။ ဤလေ့ကျင့်ခန်းတွင် ဒေတာဘေ့စ်ကို ရုပ်ပိုင်းဆိုင်ရာ မွမ်းမံထားခြင်း မရှိသော်လည်း၊ ထိုသို့ပြုလုပ်လိုပါက၊ အကွက်အမည်များသည် သင့်ဒေတာဘေ့စ်နှင့် ကိုက်ညီမှုရှိမရှိ သေချာစေရန်၊ VBA ထုတ်ပြန်ချက် conndb.execute(strSQL) ကို အသုံးပြုပါ။

Excel ပျက်စီးမှုများမှ ပြန်လည်ရယူခြင်း။

သင့်ကွန်ပြူတာတွင် အရင်းအမြစ်များ ကုန်သွားသောအခါ Excel သည် ပျက်စီးသွားနိုင်သည်။ ဤလေ့ကျင့်ခန်းကို ရေးသားနေစဉ်အတွင်း Excel ၏ စာရင်းဇယားသည် မသိမ်းဆည်းရသေးသဖြင့် ပိတ်သွားပါသည်။ ကုဒ်ဝင်းဒိုးသည် တစ်စိတ်တစ်ပိုင်းတုံ့ပြန်မှုဖြစ်ပြီး အလုပ်စာအုပ်တစ်ခုလုံးကို ပိတ်ပစ်နိုင်ခဲ့သည်။ ထွက်လာသည့်အတိုင်း၊ အကြောင်းအရာနှင့် ကုဒ်အပြည့်အစုံဖြင့် အလုပ်စာအုပ်ကို ပုံမှန်အတိုင်း ပြန်ဖွင့်သည်။ tempo ရှိခဲ့တယ်။rary နှင့် source ဖိုင်များ (မကြာခဏဆိုသလို) ပျက်စီးသွားသည်၊ ဖြေရှင်းရန် tool တစ်ခုမရှိပါက အလုပ်ပြန်လုပ်ရမည်ဖြစ်ပါသည်။ xlsx ပျက်စီးခြင်း။. ဤကိစ္စတွင် အရေးပါမှု အနည်းငယ်သာ ရှိသော်လည်း ကြီးမားသော အလုပ်စာအုပ်များအတွက် ဖြစ်နိုင်ခြေရှိသော ဘေးဥပဒ်တစ်ခု ဖြစ်နိုင်သည်။

စာရေးသူနိဒါန်း:

Felix Hooker သည် ဒေတာပြန်လည်ရယူရေးဆိုင်ရာ ကျွမ်းကျင်သူဖြစ်သည်။ DataNumen, Inc. အပါအဝင် ဒေတာပြန်လည်ရယူရေးနည်းပညာများတွင် ကမ္ဘာ့ခေါင်းဆောင်ဖြစ်သည်။ recover rar နှင့် sql recovery software ထုတ်ကုန်များ။ ပိုမိုသိရှိလိုပါကသွားရောက်ကြည့်ရှု www ။datanumen.com

ယခုမျှဝေပါ-

မှတ်ချက်များကိုပိတ်ထားကြသည်။