apache / apache/datafusion-sqlparser-rs

Failed to parse Mysql CHARACTER SET with COLLATE clause

Đang mở
#1,544 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Rust
Star
3.5k
Fork
772
Merge trung bình
4 ngày 9 giờ
Pull request đã merge (30 ngày)
17

Mô tả

When using SQLParser, the following ALTER TABLE statement fails to parse:
ALTER TABLE `test`.`test` MODIFY COLUMN `v` varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL AFTER `id`,DROP PRIMARY KEY,ADD PRIMARY KEY (`id`, `v`) USING BTREE
The issue seems to be related to the presence of the COLLATE latin1_swedish_ci clause. If the COLLATE clause is removed, the statement parses successfully.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Bắt đầu bằng cách tái hiện câu lệnh ALTER TABLE đã được báo cáo bằng SQLParser, rồi so sánh với phiên bản bỏ qua mệnh đề COLLATE. Công việc hoàn tất khi câu lệnh MySQL đầy đủ, bao gồm CHARACTER SET và COLLATE, được phân tích cú pháp thành công.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
rust, sql
Lĩnh vực
databases
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
52/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.