是否有方法更改数据库中具有特定数据类型的所有列?
我有一些列的数据类型是datetime(6),如果有的话,我只希望它们是datatime .没有6个小数。在MySql中可以这样做,而不必指定每一列吗?谢谢
发布于 2014-11-06 16:53:47
您必须用必要的语句创建文本字符串并将其保存在某个地方(我没有日期时间(6)的列,但必须是这样的):
select
concat('ALTER TABLE ',
TABLE_SCHEMA,
'.',
table_name,
' CHANGE COLUMN ',
Column_name,
' ',
Column_name,
' DATETIME NULL DEFAULT NULL')
from
INFORMATION_SCHEMA.COLUMNS
where
table_schema = 'my_schema'
and data_type = 'datetime'
and character_maximum_length = 6 #may be numeric_precision, i don't know在使用exec语句之后,如下所示:
PREPARE stmt1 FROM 'ALTER TABLE ....';
EXECUTE stmt1https://stackoverflow.com/questions/26784096
复制相似问题