Files
cattleTransportation/tradeCattle/add_device_id_to_xq_client_log.sql

34 lines
1.1 KiB
MySQL
Raw Normal View History

2025-10-24 17:32:42 +08:00
-- 为xq_client_log表添加device_id字段
-- 解决SQLSyntaxErrorException: Unknown column 'device_id' in 'field list'错误
-- 检查字段是否已存在,如果不存在则添加
SET @sql = (SELECT IF(
(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'xq_client_log'
AND COLUMN_NAME = 'device_id') > 0,
'SELECT "device_id字段已存在" as message',
'ALTER TABLE xq_client_log ADD COLUMN device_id varchar(50) NOT NULL COMMENT "项圈编号" AFTER id'
));
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
-- 为device_id字段添加索引
SET @sql2 = (SELECT IF(
(SELECT COUNT(*) FROM INFORMATION_SCHEMA.STATISTICS
WHERE TABLE_SCHEMA = DATABASE()
AND TABLE_NAME = 'xq_client_log'
AND INDEX_NAME = 'idx_device_id') > 0,
'SELECT "device_id索引已存在" as message',
'ALTER TABLE xq_client_log ADD INDEX idx_device_id (device_id)'
));
PREPARE stmt2 FROM @sql2;
EXECUTE stmt2;
DEALLOCATE PREPARE stmt2;
-- 显示表结构确认
DESCRIBE xq_client_log;