【发布时间】:2019-07-20 17:16:18
【问题描述】:
我正在尝试使用 MySQL 来存储一系列矩阵和字典。 我正在使用 python 3。
为此,我使用 .dumps() 序列化矩阵并将我的字典放入 np.arrays 并序列化它们。
这就是我正在尝试的:
matriz_entry = serie.pvalue_matrix.dumps()
sinais_entry = np.array([serie.sinais]).dumps()
c.execute('INSERT INTO test_table (time, sinais, matriz) VALUES (%s,%s,%s)',
(time.time(), sinais_entry, matriz_entry))
返回此错误:`pymysql.err.InternalError: (1366, "Incorrect string value: '\x80\x02cnum...' for column 'sinais' at row 1")
这是我的 MySQL 表:
mysql> DESC test_table;
+--------+----------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+----------------+------+-----+---------+-------+
| time | varchar(100) | YES | | NULL | |
| sinais | varchar(13000) | YES | | NULL | |
| matriz | varchar(2000) | YES | | NULL | |
+--------+----------------+------+-----+---------+-------+
3 rows in set (0.00 sec)
我实际上是 SQL 新手,我不知道序列化对象是否是一种好习惯,因为我可能超过了表的最大行长度(序列化的字典长度超过 12000 个字符)。
我也尝试过使用 TEXT 类型而不是 VARCHAR(),但这也不起作用。
请索取任何相关的附加信息。
【问题讨论】:
标签: mysql python-3.x