Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

सी # कोड में MySQL रिटर्न हमेशा 1 क्यों होता है लेकिन जब मैं संग्रहीत प्रक्रिया में परीक्षण नहीं करता हूं?

जब तक आपने UseAffectedRows . सेट नहीं किया है कनेक्शन स्ट्रिंग विकल्प, यह डिफ़ॉल्ट रूप से false . है . इसका मतलब है :

इसके अतिरिक्त, ROW_COUNT समारोह :

इस प्रकार, अपडेट उपयोगकर्ता आपके संग्रहीत कार्यविधि में कथन क्वेरी द्वारा पाई गई पंक्तियों की संख्या लौटाएगा, न कि वह संख्या जो वास्तव में अपडेट की गई थी।

इसे ठीक करने के लिए, या तो:

  1. सेट करें UseAffectedRows=true; आपके कनेक्शन स्ट्रिंग में; इससे अन्य अद्यतन में परिवर्तन हो सकते हैं प्रश्न.
  2. WHERE में और शर्तें जोड़ें खंड, उदा., WHERE ... और SELLER_IMAGE_ID !=SellerImageID और SELLER_BUSINESS_LOGO_ID !=BusinessImageID , यह सुनिश्चित करने के लिए कि पंक्ति केवल तभी मिलती है और अपडेट की जाती है जब उसे वास्तव में बदलने की आवश्यकता होती है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. java.sql.SQLException:कॉलम गिनती पंक्ति 1 त्रुटि पर मान गणना से मेल नहीं खाती

  2. SQLSTATE [42000]:सिंटैक्स त्रुटि या पहुँच उल्लंघन:1064

  3. MySQL - 'Last_Query_Cost' जैसी स्थिति दिखाएं का उपयोग करके अंतिम क्वेरी लागत प्राप्त करें

  4. JSON और सर्वर पर छवि अपलोड करें

  5. विदेशी कुंजी के साथ मारियाडीबी/माईएसक्ल तालिका में फ़ील्ड छोड़ने में सक्षम नहीं है