Problemas:
los datos escritos en la base de datos, la ha notificado el error
sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1366, "Incorrect string value: '\\xE4\\xB8\\xAD\\xE5\\x9B\\xBD' for column 'country_name' at row 1")
Un problema que siempre pensé que era el principio del campo, campo en varias ocasiones confirmar si hay un error, y más tarde resultó ser un problema UTF-8;
solución:
el establecimiento de una base de datos debe estar en formato UTF8;
create database ZYW53NCP character set utf8;
A continuación, el modelado de código, así como datos de entrada, no hay ningún problema;
la propiedad de base de datos a UTF8;
tablas de bases de datos de propiedad UTF8 también se establece;
Extensión
1. Cómo ver y modificar la base de datos de codificación?
Especificar el conjunto de caracteres base de datos cuando se crea una base de datos:
create database <数据库名> character set utf8;
Ver código:
> show create database ZYW53NCP;
Modificar el formato de base de datos de codificación:
alter database <数据库> character set utf8;
2. Cómo ver y modificar las propiedades de la tabla de codificación?
Especificar el formato de codificación de la tabla de datos al crear la tabla de datos:
create table tb_books(
name varchar(45) not null,
price double not null,
bookCount int not null,
author varchar(45) not null) default charset = utf8;
Ver:
show create table <表名>
Modificar la tabla de formato de codificación de datos
alter table <表名> character set utf8;
Modificar el formato de codificación de campo
alter table <表名> change <字段名> <字段名> <类型> charset set utf8;
alter table tb_books change name name varchar(20) character set utf8 not null;
Referencia
Ver base de datos MySQL y codificación