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

निष्पादन के साथ पंक्तियों को सम्मिलित करते समय अमान्य पैरामीटर प्रकार (numpy.int64) ()

आपकी समस्या डेटा की मात्रा के साथ नहीं है प्रति से , यह है कि आपके कुछ टुपल्स में numpy.int64 . है वे मान जिन्हें सीधे आपके SQL कथन के लिए पैरामीटर मान के रूप में उपयोग नहीं किया जा सकता है। उदाहरण के लिए,

a = numpy.array([10, 11, 12], dtype=numpy.int64)
params = (1, 1, a[1], 1, 1, 1)
crsr.execute(sql, params)

फेंक देंगे

क्योंकि तीसरा पैरामीटर मान numpy.int64 है आपके सुन्न सरणी से तत्व a . उस मान को int() . के साथ कनवर्ट करना समस्या से बचेंगे:

a = numpy.array([10, 11, 12], dtype=numpy.int64)
params = (1, 1, int(a[1]), 1, 1, 1)
crsr.execute(sql, params)

वैसे, इसकी वजह

sql = 'SET GLOBAL max_allowed_packet=50*1024*1024'
cursor.execute(sql)

काम नहीं किया कि max_allowed_packet एक MySQL सेटिंग है जिसका Microsoft 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. SQL सर्वर में एक varbinary (अधिकतम) में अधिकतम वास्तविक स्थान

  3. SQL में गुणन कुल ऑपरेटर

  4. मैं टी-एसक्यूएल में एक स्ट्रिंग से विस्तारित ASCII वर्ण कैसे निकालूं?

  5. कैसे OBJECTPROPERTYEX () SQL सर्वर में काम करता है