修改字段类型 ALTER TABLE table_name ALTER COLUMN column_name new_data_type ALTER TABLE soft ALTER COLUMN name varchar(10) null
可以在表设计器里直接修改,不过,前提是:所有记录在该列上都不能为NULL.
楼主是要去掉列约束 还是要去掉not null的记录
去掉列约束 1.创建 temp_name alter table soft add temp_name varchar(64) null 2.拷贝数据 update soft set temp_name =name 3.删除name列 alter table soft drop column name 4.改名字 exec sp_rename temp_name', name','column'
BEGIN TRANSACTION CREATE TABLE dbo.Tmp_soft ( name char(10) NULL ) ON [PRIMARY] GO IF EXISTS(SELECT * FROM dbo.soft) EXEC('INSERT INTO dbo.Tmp_soft (name) SELECT name FROM dbo.soft (HOLDLOCK TABLOCKX)') GO DROP TABLE dbo.soft GO EXECUTE sp_rename N'dbo.Tmp_soft', N'soft', 'OBJECT' GO COMMIT
ALTER TABLE table_name ALTER COLUMN column_name new_data_type
ALTER TABLE soft ALTER COLUMN name varchar(10) null
1.创建 temp_name
alter table soft add temp_name varchar(64) null
2.拷贝数据
update soft
set temp_name =name
3.删除name列
alter table soft drop column name
4.改名字
exec sp_rename temp_name', name','column'
CREATE TABLE dbo.Tmp_soft
(
name char(10) NULL
) ON [PRIMARY]
GO
IF EXISTS(SELECT * FROM dbo.soft)
EXEC('INSERT INTO dbo.Tmp_soft (name)
SELECT name FROM dbo.soft (HOLDLOCK TABLOCKX)')
GO
DROP TABLE dbo.soft
GO
EXECUTE sp_rename N'dbo.Tmp_soft', N'soft', 'OBJECT'
GO
COMMIT