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

अजगर में mysql कनेक्टर के साथ mysql डेटाबेस से ठीक से बूँदें प्राप्त करना

हम एक ही समस्या में भाग गए कि BLOB को गलती से MySQL 8.0.13, mysql-connector-python 8.0.13 और sqlalchemy 1.2.14 के साथ UTF-8 स्ट्रिंग्स के रूप में पढ़ लिया गया था।

हमारे लिए use_pure . को सक्षम करने की तरकीब क्या थी? MySQL Connector का विकल्प . use_pure . का डिफ़ॉल्ट सी एक्सटेंशन का उपयोग करने के लिए नए डिफ़ॉल्ट के साथ 8.0.11 में बदल गया था। इस प्रकार, हम विकल्प को वापस सेट करते हैं:

create_engine(uri, connect_args={'use_pure': True}, ...)

हमारी त्रुटि और स्टैक ट्रेस का विवरण:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x9c in position 1: invalid start byte
The above exception was the direct cause of the following exception:

Traceback (most recent call last):
    ....
    File "/usr/local/lib/python3.6/site-packages/mysql/connector/cursor_cext.py", line 272, in execute
        self._handle_result(result)
    File "/usr/local/lib/python3.6/site-packages/mysql/connector/cursor_cext.py", line 163, in _handle_result
        self._handle_resultset()
    File "/usr/local/lib/python3.6/site-packages/mysql/connector/cursor_cext.py", line 651, in _handle_resultset
        self._rows = self._cnx.get_rows()[0]
    File "/usr/local/lib/python3.6/site-packages/mysql/connector/connection_cext.py", line 273, in get_rows
        row = self._cmysql.fetch_row()
    SystemError: <built-in method fetch_row of _mysql_connector.MySQL object at 0x5627dcfdf9f0> returned a result with an error set


  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. SqlAlchemy टेबल ऑब्जेक्ट को क्वेरी करते समय सभी पंक्तियों को वापस नहीं कर रहा है, लेकिन जब मैं टेबल ऑब्जेक्ट कॉलम को क्वेरी करता हूं तो सभी पंक्तियों को वापस कर देता है

  3. दो कॉलम में दो चयन कथन गठबंधन?

  4. MySQL फ़ील्ड में csv संग्रहीत करना - बुरा विचार?

  5. अन्य कॉलम में उपनाम का उपयोग करना