mysql - mysqldump 无法从您发送到已添加的 GEOMETRY 字段的数据中获取几何对象 --hex-blob
问题描述
我正在尝试做一个 mysql 转储,这是我正在使用的命令:
mysqldump --hex-blob -u user -p database > dump.sql
有人告诉我这应该解决二进制point
字段在使用导入时我仍然如何得到这个错误mysql database < dump.sql
无法从您发送到 GEOMETRY 字段的数据中获取几何对象
不知道此时该做什么
我正在从版本导出5.6.45
到5.7.27
但是,导入看起来不错,它包含所有记录,当我选择几何数据时,它看起来像二进制数据,我可以吗?
// 找到 45K 条记录
select * from listingsaws where ST_IsEmpty(`location`) IS NULL;
// 更新了 0 条记录
UPDATE listingsaws SET `location` = NULL WHERE ST_IsEmpty(`location`) IS NULL;
// 找到 45K 条记录
select * from listingsaws where asText(`location`) IS NULL;
//更新0条记录
UPDATE listingsaws SET `location` = NULL WHERE asText(`location`) IS NULL;
解决方案
显然 5.7 比 GEOMETRY 类型字段的 5.6 更严格。
首先尝试的最简单的方法是确保将任何空几何字段正确设置为 NULL,您可以这样做:
UPDATE myTable
SET myGeo = NULL
WHERE ST_IsEmpty(myGeo) IS NULL;
否则,您可以查看这些进一步深入研究此类问题的问题:
推荐阅读
- http - HTTP 方法:为什么不总是使用 PUT 而不是 POST?
- oracle - 创建游标以连接到远程数据库
- java - 自定义 Web 项目的 Gradle 脚本
- blockchain - 将 Web App 转换为 Dapp 以实现区块链
- r - 在不使用 for 循环的情况下根据多个条件匹配不同数据帧中的行
- vba - 如何在VBA中解压缩同名文件?
- android - 工具栏小部件、NavHostFragment 和 bottomNavigationView - Android
- google-cloud-platform - Google Dataprep:将 GCS 文件名另存为列之一
- android - 如何将数据从我的 TWA webapp 发送到我的应用程序?
- python - 如何将数据列表插入 Pandas 多索引数据框