全部,
我有一个填充表,其中“ SSN ”列作为数据类型INT。是否可以将列“ SSN ”和列中的数据转换为 VARCHAR(#)。
ALTER TABLE Table1
MODIFY SSN varchar(9);
那会奏效吗?
谢谢!
任何帮助表示赞赏!
全部,
我有一个填充表,其中“ SSN ”列作为数据类型INT。是否可以将列“ SSN ”和列中的数据转换为 VARCHAR(#)。
ALTER TABLE Table1
MODIFY SSN varchar(9);
那会奏效吗?
谢谢!
任何帮助表示赞赏!
alter table Table1
alter column SSN varchar(9);
您可以进行快速测试以验证这将保留数据。
create table #data(
ssl int
)
insert into #data values(1)
insert into #data values(2)
insert into #data values(3)
insert into #data values(4)
select * from #data
alter table #data
alter column ssl varchar(9)
select * from #data
在做这样的事情之前有备份永远不会有坏处。如果不是大量数据,即使快速插入另一个表也可以。
对于那些需要 MySQL 语法而不是 ANSI SQL 语法的人,请尝试以下操作:
ALTER TABLE Table1 MODIFY SSN varchar(9)
如果您有数据已经存在,它不允许您更改列类型。您可以备份数据,然后在更改表后重新填充表。