sql中replace函数出现的错误

由于图片服务器变更,要将文本字段中的服务器地址进行替换

字段类型 text

测试过程:

update image_server set image_text=replace(image_text,url1,url2)

错误信息:

函数 replace 的参数 1 的数据类型 text 无效。

我怀疑是text类型是replace不能识别的类型,所有准备换成varchar类型试一下,为了图方便,我在控制台直接将数据类型转换了一下,当然我是在测试,操作真正业务的时候不要这样直接的准换,容易丢失数据,最后我查看了一下我text文件中的数据,发现varchar(6000)够用了

再次执行

update image_server set image_text=replace(image_text,url1,url2)

错误信息

将截断字符串或二进制数据。
语句已终止。
发现直接在控制太转换不行,在控制台将字段的类型准换回text,控制台转换不成只有利用Convert函数了

update image_server set image_text=replace(convert(varchar(6000),image_text),url1,url2)

最后替换成功

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值