2012-11-13 22 views
6

पर एक से अधिक अद्यतन आदेश पर अमल मैं Excel फ़ाइल है और मैं मैं इस कोड लिखने एक sheet.So में अनेक पंक्तियां अपडेट हैं:एक्सेल

OleDbConnection cn = new OleDbConnection("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = " + serverPath + ";Extended Properties = Excel 8.0;"); 
     try 
     { 

      strUpd = ""; 
      strUpd += "update [Data14City$] set B_1_1 = 5 ,B_1_2 = 26 ,B_1_3 = 44 ,B_1_4 = 8 where id = 1 "; 
      strUpd += " update [Data14City$] set B_1_1 = 0 ,B_1_2 = 8 ,B_1_3 = 17 ,B_1_4 = 0 where id = 2"; 
      cn.Open(); 
      OleDbCommand cmdInsert = new OleDbCommand(strUpd, cn); 
      cmdInsert.ExecuteNonQuery(); 
      cn.Close(); 
     } 
     catch 
     { 
     } 

और मैं इस त्रुटि मिली:

Syntax error (missing operator) in query expression 'id = 1 update [Data14City$] set B_1_1 = 0 ,B_1_2 = 8 ,B_1_3 = 17 ,B_1_4 = 0 where id = 2'.

और मैं जब मैं इस लाइन के लिए ; जोड़ें:

strUpd += "update [Data14City$] set B_1_1 = 5 ,B_1_2 = 26 ,B_1_3 = 44 ,B_1_4 = 8 where id = 1;"; 

मैं यह त्रुटि आई:

012,351,

Characters found after end of SQL statement.

मैं एक्सेल में एकाधिक कथन कैसे निष्पादित कर सकता हूं?

धन्यवाद

+0

इसकी याद आ रही है या तो "और"/"या": - "अद्यतन [Data14City $] सेट B_1_1 = 5, B_1_2 = 26, B_1_3 = 44, B_1_4 = 8 जहां आईडी = 1 या सेट B_1_1 = 0 , B_1_2 = 8, B_1_3 = 17, B_1_4 = 0 जहां id = 2 " – Derek

+0

कृपया – Arian

+0

एमी सही तरीके से प्राप्त करने की कोशिश में कह रहे हैं: - अद्यतन तालिका सेट करें जहां एक आईडी आईडी = 1 या/और सेट बी कहां आईडी = 2? क्या आपने ऊपर की स्ट्रिंग की कोशिश की है? – Derek

उत्तर

0

आप वास्तव में उस तरह आपके अपडेट टिके रहते हैं की जरूरत नहीं है (वास्तव में, जैसा कि ऊपर बताया गया है, आप नहीं कर सकते)। उन्हें अलग-अलग निष्पादित करने में अधिक समय नहीं लगता है। यहां वह कोड है जिसका मैं उपयोग कर रहा हूं और यह ठीक काम करता है (मेरे पास वास्तव में एक लूप में मेरा है, लेकिन यदि आप अपने अपडेट लूप नहीं कर सकते हैं तो यह उतना ही अच्छा काम करेगा)।

cn.Open(); 

using (OleDbCommand cmd = cn.CreateCommand()) 
{ 
    cmd.CommandText = "update [Data14City$] set B_1_1 = 5 ,B_1_2 = 26 ,B_1_3 = 44 ,B_1_4 = 8 where id = 1"; 
    cmd.ExecuteNonQuery(); 
    cmd.CommandText = "update [Data14City$] set B_1_1 = 0 ,B_1_2 = 8 ,B_1_3 = 17 ,B_1_4 = 0 where id = 2"; 
    cmd.ExecuteNonQuery(); 

    // ... and so on 
} 

cn.Close();