66 lines
2.4 KiB
SQL
66 lines
2.4 KiB
SQL
-- 全面修复xq_client_log表字段长度问题
|
|
-- 解决Data truncation错误
|
|
|
|
-- 1. 检查当前字段长度
|
|
SELECT
|
|
COLUMN_NAME,
|
|
DATA_TYPE,
|
|
CHARACTER_MAXIMUM_LENGTH,
|
|
NUMERIC_PRECISION,
|
|
NUMERIC_SCALE,
|
|
IS_NULLABLE,
|
|
COLUMN_DEFAULT
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'xq_client_log'
|
|
ORDER BY ORDINAL_POSITION;
|
|
|
|
-- 2. 修改所有可能超长的字段
|
|
-- latitude字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN latitude VARCHAR(100) DEFAULT NULL COMMENT '纬度';
|
|
|
|
-- longitude字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN longitude VARCHAR(100) DEFAULT NULL COMMENT '经度';
|
|
|
|
-- device_voltage字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN device_voltage VARCHAR(100) DEFAULT NULL COMMENT '设备电量';
|
|
|
|
-- device_temp字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN device_temp VARCHAR(100) DEFAULT NULL COMMENT '设备温度';
|
|
|
|
-- server_device_id字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN server_device_id VARCHAR(100) DEFAULT NULL COMMENT '主机设备ID';
|
|
|
|
-- walk_steps字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN walk_steps BIGINT(20) DEFAULT NULL COMMENT '总步数';
|
|
|
|
-- y_walk_steps字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN y_walk_steps BIGINT(20) DEFAULT NULL COMMENT '昨日总步数';
|
|
|
|
-- create_time字段 - 确保正确类型
|
|
ALTER TABLE xq_client_log MODIFY COLUMN create_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间';
|
|
|
|
-- update_time字段 - 确保正确类型
|
|
ALTER TABLE xq_client_log MODIFY COLUMN update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间';
|
|
|
|
-- create_by字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN create_by VARCHAR(100) DEFAULT NULL COMMENT '创建人';
|
|
|
|
-- update_by字段 - 扩展长度
|
|
ALTER TABLE xq_client_log MODIFY COLUMN update_by VARCHAR(100) DEFAULT NULL COMMENT '更新人';
|
|
|
|
-- 3. 显示修改后的表结构
|
|
DESCRIBE xq_client_log;
|
|
|
|
-- 4. 验证修改结果
|
|
SELECT
|
|
COLUMN_NAME,
|
|
DATA_TYPE,
|
|
CHARACTER_MAXIMUM_LENGTH,
|
|
NUMERIC_PRECISION,
|
|
NUMERIC_SCALE
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'xq_client_log'
|
|
AND COLUMN_NAME IN ('latitude', 'longitude', 'device_voltage', 'device_temp', 'server_device_id', 'walk_steps', 'y_walk_steps');
|