在django中向mysql数据库中插入数据,提示如下错误提示:
image.png
初步定位为编码问题,因为插入英文数据没问题。
因为这是python3 ,会默认转换编码,pycharm已经写了默认编码配置。
定位在数据库
增加了如下配置,但是发现好像没卵用,而且查看数据库编码都是utf8。
image.png
开始排查mysql中此表的DDL语句,并定位问题。
CREATE TABLE `app01_book` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(32) NOT NULL,
`pub_date` date NOT NULL,
`price` decimal(8,2) NOT NULL,
`publish` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CHARSET=latin1 !!!
问题确认。
网友评论