-- ============================================ -- 删除sys_user表中的phonenumber字段 -- 注意:删除字段是危险操作,请先备份数据! -- ============================================ -- 方法1:直接执行(推荐,MySQL 5.7+支持) -- 如果字段存在,直接删除 ALTER TABLE `sys_user` DROP COLUMN `phonenumber`; -- 如果上面的语句不支持,使用下面的方法: -- 方法2:先检查再删除(兼容性更好) -- SET @exist := (SELECT COUNT(*) FROM information_schema.COLUMNS -- WHERE TABLE_SCHEMA = DATABASE() -- AND TABLE_NAME = 'sys_user' -- AND COLUMN_NAME = 'phonenumber'); -- -- SET @sqlstmt := IF(@exist > 0, -- 'ALTER TABLE `sys_user` DROP COLUMN `phonenumber`', -- 'SELECT ''phonenumber字段不存在'' as result'); -- -- PREPARE stmt FROM @sqlstmt; -- EXECUTE stmt; -- DEALLOCATE PREPARE stmt; -- 验证:查询sys_user表结构,确认phonenumber字段已删除 -- 如果查询结果为空,说明字段已成功删除 SELECT COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENT FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 'sys_user' AND COLUMN_NAME = 'phonenumber';