sqle
sqle copied to clipboard
规则:建议列与表使用同一个字符集,对建表语句的JSON列误触发
çæ¬ä¿¡æ¯ï¼Versionï¼
3.24.04
é®é¢æè¿°ï¼Describeï¼
å¨å¯¹å»ºè¡¨è¯å¥å®¡æ ¸æ¶ï¼è¥å¼å¯è§åï¼å»ºè®®åä¸è¡¨ä½¿ç¨åä¸ä¸ªå符é
ï¼ä¸å»ºè¡¨è¯å¥ä¸å
å«JSONåæ¶ï¼ä¼é误ç触å该è§å
æ ¹æ®ææ¡£ï¼
MySQL :: MySQL 8.4 Reference Manual :: 13.5 The JSON Data Type
JSONå¨mysqlçåå¨ä¸çåå¨å½¢å¼æ¯äºè¿å¶ï¼binary)
ä½æjsonæ ¼å¼çå符é认为æ¯binaryï¼æ¯ä¸åç¡®ç
å®é
ä¸æ¥è¯¢mysqlï¼jsonæ ¼å¼æ²¡æå符é
æªå¾ææ¥å¿ï¼Logï¼
å¦ä½å¤ç°ï¼To Reproduceï¼
- å¼å¯è§åï¼
建议åä¸è¡¨ä½¿ç¨åä¸ä¸ªå符é
- ç¨SQLEçä¸ä¸ªè¡¨ç建表è¯å¥è¿è¡æµè¯
CREATE TABLE `db_service_sync_tasks` (
`uid` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
`created_at` datetime(3) DEFAULT NULL,
`updated_at` datetime(3) DEFAULT NULL,
`name` varchar(200) COLLATE utf8mb4_unicode_ci NOT NULL,
`source` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`url` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`db_type` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`cron_express` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
`last_sync_err` longtext COLLATE utf8mb4_unicode_ci,
`last_sync_success_time` datetime(3) DEFAULT NULL,
`extra_parameters` json DEFAULT NULL,
PRIMARY KEY (`uid`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
é®é¢åå
å¨æ¾ç»çä¸æ¬¡åæ´ä¸ï¼é误çå°jsonçåçå符é设置为binary