我想将当前名为deviceID
的列重命名为更具eloquent风格的device_id
。然后使用sed s/deviceID/device_id
在我的代码库中将它放入MySQL中似乎是最好的解决方案。
所以我写了这个助手:
SELECT
CONCAT('ALTER TABLE `', TABLE_SCHEMA, '`.`', TABLE_NAME,
'` CHANGE COLUMN `', COLUMN_NAME, '` `device_id` ',
COLUMN_TYPE, IF(IS_NULLABLE = 'YES', ' NULL', ' NOT NULL'),
IF (COLUMN_DEFAULT IS NULL, '', CONCAT('DEFAULT ', COLUMN_DEFAULT)), ';')
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
COLUMN_NAME LIKE 'deviceID';
然后我可以将输出传递到mysql
中。
有没有更简单,更安全的解决方案?