mssql已有数据,要将某项类型从text转换成varchar,sql应该怎么写?
mssql已有数据,要将某项类型从text转换成varchar,sql应该怎么写?比如要修改的表是data1,数据项是beizhu,beizhu本来是text类型,现在要...
mssql已有数据,要将某项类型从text转换成varchar,sql应该怎么写?
比如要修改的表是data1,数据项是beizhu,beizhu本来是text类型,现在要转换成varchar 展开
比如要修改的表是data1,数据项是beizhu,beizhu本来是text类型,现在要转换成varchar 展开
3个回答
展开全部
sql数据库不允许对Text类型的字段经常转换
不过我们通常用这个方法来解决类似问题,希望对你有帮助
--假设有表A(ID int ,Addr text)
--首先添加一个字段
alter table A add addr1 varchar(20)
--将原来text类型的字段内容拷贝过来
update A set Addr1=addr
--去除原表里的Text类型字段
alter table a drop column addr
--这样以后凡是用到Addr 字段的地方用Addr1代替就行了
--当然你可以再添加一个varchar(20)型的字段Addr
alter table A add addr1 varchar(20)
--然后把字段内容拷贝回
update A set Addr=addr1
alter table a drop column addr1
--这样就会和原来一样使用了
--希望对你有帮助
不过我们通常用这个方法来解决类似问题,希望对你有帮助
--假设有表A(ID int ,Addr text)
--首先添加一个字段
alter table A add addr1 varchar(20)
--将原来text类型的字段内容拷贝过来
update A set Addr1=addr
--去除原表里的Text类型字段
alter table a drop column addr
--这样以后凡是用到Addr 字段的地方用Addr1代替就行了
--当然你可以再添加一个varchar(20)型的字段Addr
alter table A add addr1 varchar(20)
--然后把字段内容拷贝回
update A set Addr=addr1
alter table a drop column addr1
--这样就会和原来一样使用了
--希望对你有帮助
展开全部
alter table data1
alter column beizhu varchar(30)
varchar(30)只是一个例子,如果你的text很长,你就要加大varchar,否则会报错
“String or binary data would be truncated.
The statement has been terminated.”
我用的sql server 2008
alter column beizhu varchar(30)
varchar(30)只是一个例子,如果你的text很长,你就要加大varchar,否则会报错
“String or binary data would be truncated.
The statement has been terminated.”
我用的sql server 2008
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
alter table 表名
add 字段名 字段类型
比如向test表添加一列 int型的字段 id语句为
alter table test
add id int
add 字段名 字段类型
比如向test表添加一列 int型的字段 id语句为
alter table test
add id int
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询