gpt4 book ai didi

mysql - 将许多字段的数据类型从位转换为 tinyint

转载 作者:行者123 更新时间:2023-11-29 02:32:41 27 4
gpt4 key购买 nike

以下查询是否是转换字段数据类型的可接受方式?

UPDATE INFORMATION_SCHEMA.COLUMNS 
SET `COLUMNS`.`DATA_TYPE` = 'tinyint'
WHERE
`COLUMNS`.`TABLE_SCHEMA` = 'BAR'
AND `COLUMNS`.`TABLE_NAME` = 'FOO'
AND `COLUMNS`.`DATA_TYPE` = 'bit'

我应该关心数据完整性还是存储为 bit 的数据会毫无问题地移动到 tinyint?

最佳答案

你不能直接修改元数据表(它们实际上是 View ,但在这种情况下区别并不重要)但你可以使用它们来生成你的 alter table 语句,如下所示:

SELECT 'ALTER TABLE ' + TABLE_SCHEMA + '.' + TABLE_NAME + ' ALTER COLUMN ' + COLUMN_NAME + ' TINYINT' + CASE WHEN IS_NULLABLE = 'YES' THEN ' NULL;' ELSE ' NOT NULL;' END
FROM INFORMATION_SCHEMA.COLUMNS
WHERE `COLUMNS`.`TABLE_SCHEMA` = 'BAR'
AND `COLUMNS`.`TABLE_NAME` = 'FOO'
AND `COLUMNS`.`DATA_TYPE` = 'bit'

关于mysql - 将许多字段的数据类型从位转换为 tinyint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10544932/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com