我的应用程序有一个带有VARCHAR(25)的表,我需要为新老用户增加这个值。
对于新用户,我可以只更新CREATE语句。对于老用户,我可以在应用程序启动时执行"ALTER TABLE“。
目前,我不知道用户正在从哪个版本更新,所以这就引出了我的问题:是否可以在每次启动时执行alter语句,即使没有任何变化,或者我是否应该实现一种方法来检查以前的版本?
发布于 2020-12-16 22:39:29
您可以每次运行ALTER TABLE。如果该列以前已经更改过,则不会发生任何操作。
或者,您可以在更新之前检查列长度:
select CHARACTER_MAXIMUM_LENGTH
from INFORMATION_SCHEMA.COLUMNS
where TABLE_SCHEMA='db' and TABLE_NAME='table' and COLUMN_NAME='column'https://stackoverflow.com/questions/65324054
复制相似问题