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

इसका क्या मतलब है जब Statement.executeUpdate() रिटर्न -1?

जैसा कि निष्पादित विवरण वास्तव में डीएमएल नहीं है (उदाहरण के लिए UPDATE , INSERT या EXECUTE ), लेकिन टी-एसक्यूएल का एक टुकड़ा जिसमें शामिल है डीएमएल, मुझे संदेह है कि इसे अपडेट-क्वेरी के रूप में नहीं माना जाता है।

JDBC 4.1 विनिर्देशन की धारा 13.1.2.3 कुछ बताती है (बल्कि btw की व्याख्या करना कठिन):

इस जानकारी को देखते हुए, मुझे लगता है कि executeUpdate() आंतरिक रूप से एक execute() करता है , और फिर - execute() . के रूप में false लौटाएगा - यह getUpdateCount() . का मान लौटाएगा , जो इस मामले में - JDBC युक्ति के अनुसार - -1 . लौटाएगा ।

यह इस तथ्य से आगे पुष्टि करता है 1) कि जावाडोक Statement.executeUpdate() कहते हैं:

और 2) कि जावाडोक Statement.getUpdateCount() निर्दिष्ट करता है:

बस स्पष्ट करने के लिए:executeUpdate() के लिए Javadoc दिया गया है व्यवहार शायद गलत है, लेकिन इसे समझाया जा सकता है।

साथ ही जैसा कि मैंने कहीं और टिप्पणी की, -1 बस संकेत दे सकता है:शायद कुछ बदल गया था, लेकिन हम बस नहीं जानते हैं, या हम सटीक संख्या में बदलाव नहीं दे सकते हैं (उदाहरण के लिए क्योंकि इस उदाहरण में यह टी का एक टुकड़ा है- SQL जिसे निष्पादित किया गया है)।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में तालिका और अनुक्रमणिका आकार

  2. दो संख्याओं के बीच संख्याओं की श्रेणी कैसे उत्पन्न करें?

  3. SQL सर्वर 2008 - .csv में हेडर के साथ आउटपुट के लिए cmd का उपयोग करें

  4. एसक्यूएल में शून्य त्रुटि से विभाजन से कैसे बचें?

  5. एसक्यूएल - पदानुक्रम को कैसे स्टोर और नेविगेट करें?