Flask使用pymysql操做數據庫錯誤彙總

一、 F:\book\lib\site-packages\pymysql\cursors.py:170: Warning: (1366, "Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\xEA...' for column 'VARIABLE_VALUE' at row 481")

解決辦法:python

# 以前的配置是這樣的

import pymysql
app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+pymysql://帳號:密碼@localhost/appname"

如今使用mysql.connector來鏈接數據庫mysql

# 安裝 mysql-connector-python
pip install mysql-connector-python

# 使用

import mysql.connector
app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+mysqlconnector://帳號:密碼@localhost/appname"

這是msyql5.7的編碼bug,用上面的方法能夠妥善解決sql

二、MySQL錯誤「Specified key was too long; max key length is 1000 bytes」的解決辦法

解決辦法:數據庫

  1. 檢查建立數據庫時使用的編碼是utf8仍是utf8mb4,字段設置有沒有按照對應的編碼設置

三、ImportError: No module named 'MySQLdb'

既然缺乏 MySQLdb這個模塊,按照正常的想法執行pip install MySQL-python應該能解決,可是卻報錯 ImportError: No module named 'ConfigParser'。查了一下,這是因爲 MySQL-python 不支持 Python 3(MySQL-3.23 through 5.5 and Python-2.4 through 2.7 are currently supported)app

而後安裝pymsql問題就解決了編碼

pip install PyMySQL

import pymysql
app.config["SQLALCHEMY_DATABASE_URI"] = "mysql+pymysql://帳號:密碼@localhost/appname"
相關文章
相關標籤/搜索