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

कैसे पता चलेगा कि एक MySQL अद्यतन क्वेरी विफल हो जाती है क्योंकि आपूर्ति की जा रही जानकारी डेटाबेस में पहले से मौजूद डेटा से मेल खाती है?

एक अन्य कारण से आपको 0 प्रभावित पंक्तियाँ मिलेंगी यदि UPDATE कथन कोई पंक्तियों से मेल नहीं खाता। उदाहरण के लिए:

UPDATE MyTable SET field = 'content' WHERE id = 1234;

id = 1234 . के साथ कोई पंक्ति मौजूद नहीं होने पर 0 प्रभावित पंक्तियाँ देता है . यह कोई त्रुटि नहीं है, यह सिर्फ एक UPDATE है जो बिना पंक्तियों से मेल खाने के लिए हुआ।

इस मामले का पता लगाने का तरीका SELECT . का उपयोग करना है यह सत्यापित करने के लिए कि ऐसी कोई पंक्ति है। यदि आप पुष्टि कर सकते हैं कि पंक्ति मौजूद है, लेकिन UPDATE कहा कि यह 0 पंक्तियों को प्रभावित करता है, तो आप जानते हैं कि जिन मूल्यों को आपने बदलने की कोशिश की थी, वे वास्तव में डेटाबेस में पहले से ही पंक्तियाँ थीं।

SELECT COUNT(*) FROM MyTable WHERE id = 1234;

लेकिन भेद महत्वपूर्ण नहीं हो सकता है। यदि mysql_error() . है तो आप त्रुटि की रिपोर्ट कर सकते हैं कहते हैं कि एक है, जैसा कि @BoltClock सुझाव देता है। * यदि कोई त्रुटि नहीं है तो आप उपयोगकर्ता को "कोई परिवर्तन नहीं" की रिपोर्ट कर सकते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या अलग-अलग डेटाबेस अलग-अलग नाम उद्धरण का उपयोग करते हैं?

  2. Laravel डेटाबेस स्कीमा में मध्यमब्लॉब

  3. जब यह NULL हो तो MAX फ़ंक्शन के साथ 0 कैसे सेट करें?

  4. वर्तमान पासवर्ड ज्ञात नहीं होने पर MySQL रूट पासवर्ड रीसेट करना

  5. क्या DATE_SUB() और डेटाटाइम गणना के लिए अंकगणितीय ऑपरेटरों का उपयोग करने के बीच कोई अंतर है?