| 123456789101112131415161718 |
- SET NAMES utf8mb4;
- SET @db = DATABASE();
- -- 1. ScheduleResultOpMaster 增加 PeriodDetRecId 列(关联 PeriodSequenceDet.RecID,一对一)
- SET @sql = (SELECT IF(
- COUNT(*) = 0,
- 'ALTER TABLE ScheduleResultOpMaster ADD COLUMN PeriodDetRecId BIGINT NULL COMMENT ''关联PeriodSequenceDet.RecID(一对一)''',
- 'SELECT ''ScheduleResultOpMaster.PeriodDetRecId already exists'' AS info'
- ) FROM INFORMATION_SCHEMA.COLUMNS
- WHERE TABLE_SCHEMA = @db AND TABLE_NAME = 'ScheduleResultOpMaster' AND COLUMN_NAME = 'PeriodDetRecId');
- PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
- -- 2. 为 PeriodDetRecId 建索引(加速 JOIN)
- SET @idx = 'idx_srom_perioddetrecid';
- SET @tbl = 'ScheduleResultOpMaster';
- SET @exists = (SELECT COUNT(*) FROM information_schema.statistics WHERE table_schema = @db AND table_name = @tbl AND index_name = @idx);
- SET @sql = IF(@exists = 0, CONCAT('CREATE INDEX ', @idx, ' ON ', @tbl, '(PeriodDetRecId)'), 'SELECT 1');
- PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
|