sqlalchemy出现以下错误:
sqlalchemy Specified key was too long; max key length is 767 bytes
原因
字符集设成了utf8mb4字符,一个utf8mb4字符使用4btyes,限制最大bytes数为767bytes,
除以4,等于191.75,所以最大是191个string。代码中使用了db.String(255),超过了191,所以报上述错误。
解决方法
1 数据库命令
ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_general_ci;