2015-12-16 18 views
7

Gần đây tôi đã nâng cấp lên MySQL 5.7 và đã cố gắng chạy bản sao từ 5.6 chính. Tuy nhiên bản sao không thành công với lỗi sau:Nhập MYSQL: Không thể lấy đối tượng hình học từ dữ liệu bạn gửi đến trường GEOMETRY

Error 'Cannot get geometry object from data you send to the GEOMETRY field' on query. 

Hóa ra nó cũng xảy ra khi tôi cố gắng nhập dữ liệu từ mysqldump. Cấu trúc bảng như sau:

CREATE TABLE `locations` (
    `location_id` int(10) unsigned NOT NULL AUTO_INCREMENT, 
    `country_id` int(10) unsigned NOT NULL, 
    `name` varchar(100) CHARACTER SET utf8 NOT NULL, 
    `locations_type_id` int(11) unsigned NOT NULL, 
    `parent_id` int(11) unsigned DEFAULT NULL, 
    `importance` decimal(3,2) NOT NULL DEFAULT '1.00', 
    `lat` decimal(10,7) DEFAULT NULL, 
    `lng` decimal(10,7) DEFAULT NULL, 
    `radius` decimal(6,3) DEFAULT NULL, 
    `polygon` polygon DEFAULT NULL, 
    PRIMARY KEY (`location_id`), 
    KEY `name` (`name`,`locations_type_id`,`parent_id`,`lat`,`lng`), 
    KEY `locations_type_id` (`locations_type_id`), 
    KEY `name_2` (`name`(8)), 
    KEY `country_id` (`country_id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

Dường như tôi đang nhập dữ liệu nhị phân vào trường đa giác nhưng công bằng tôi không biết cách làm cho nó hoạt động.

Bất kỳ ý tưởng nào?

+1

Tôi đã cung cấp cho bạn một lợi thế về điều này ... bất kỳ may mắn nào? Tôi có cùng một vấn đề: Không thể lấy đối tượng hình học từ dữ liệu bạn gửi đến trường GEOMETRY – jbg

+1

Tôi thực sự phải hạ cấp xuống MySQL 5.6 để sắp xếp nó ra – peterstarling

+0

Có thể nhập vào 5.6 tất cả các ngày, không có vấn đề ... nhưng 5.7 là một nogo . – Trees4theForest

Trả lời

0

Nếu bạn có thể chạy lại mysqldump, hãy thử thêm tùy chọn --hex-blob để có tất cả dữ liệu nhị phân được xuất dưới dạng kết xuất hex.

Các vấn đề liên quan