插入Unicode值炼金术时出现不正确的字符串值错误

时间:2019-04-09 06:19:11

标签: python sql unicode sqlalchemy flask-sqlalchemy

我正在python中使用SQL炼金术来与SQL数据库连接。我在表格中插入值“சிறார்கள்”。

我收到此值为

editedProduct = dbsession.query(Product).filter_by(id=product_id).one()
othertitle = request.form.get('othertitle') 
editedProduct.othertitle = othertitle
dbsession.commit()

我收到此错误。

  

sqlalchemy.exc.InternalError :(由于查询调用的自动刷新而引发;如果此刷新过早发生,请考虑使用session.no_autoflush块)(pymysql.err.InternalError)(1366,“错误的字符串值:' \ xE0 \ xAE \ x9A \ xE0 \ xAE \ xBF ...'对于第1行的“ othertitle”列”)[SQL:'UPDATE product SET版本=%(版本)s,available_quantity =%(available_quantity)s,其他标题=%(othertitle)s,语言=%(language)s,image_url =%(image_url)s,description =%(description)s,price =%(price)s,weight =%(weight)s WHERE product.id =%(product_id)s'] [参数:{'price':'123.00','product_id':1,'weight':'1.0','edition':'121','available_quantity':'2', 'othertitle':'சிறார்கள்','description':'9780132354615','image_url':'7e73c42e-82c5-47b2-aafa-d02c4b84b07f.jpg','language':['English']}}](此错误的背景位于:http://sqlalche.me/e/2j85

我的数据库网址是

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://{}:{}@localhost:3306/bookstore?charset=utf8'.format(USR, PWD) 

还尝试将字符集设置为utf8mb4。

我在那里找到了这类问题。 但是它编码和解码,却带来不必要的开销。 MySQL "incorrect string value" error when save unicode string in Django

您能建议我一个解决方案吗?当我尝试使用SQLite数据库时,没有出现此错误。

0 个答案:

没有答案