जैसा कि निष्पादित विवरण वास्तव में डीएमएल नहीं है (उदाहरण के लिए 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 जिसे निष्पादित किया गया है)।