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

update article set article_content=REPLACE(Cast(article_content as varchar(max)),‘?‘,‘ ‘) where article_id=191

原报错代码:

1
update tablename set colname=replace(colname,‘oldtext‘,‘newtext‘); 
修改后可执行代码:

1
update tablename set colname=replace(Cast(colname as varchar(8000)),‘oldtext‘,‘newtext‘);
1
update tablename set colname=replace(Cast(colname as nvarchar(4000)),‘oldtext‘,‘newtext‘);
附:max类型的介绍
varchar(max)、nvarchar(max) 和 varbinary(max) 统称为大值数据类型。可以使用大值数据类型来存储最大为 2^31-1 个字节的数据。
max 说明符是在Microsoft SQL Server 2005 中引入的。此说明符增强了 varchar、nvarchar 和 varbinary 数据类型的存储能力。

原文地址:https://www.cnblogs.com/net5x/p/12430998.html

时间: 2024-09-30 20:51:33

参数数据类型 text 对于 replace 函数的参数 1 无效的相关文章

MSSQL报错:参数数据类型 text 对于 replace 函数的参数 1 无效的解决办法

Ms - sql 数据库批量替换字符串 MSSQL报错:参数数据类型 text 对于 replace 函数的参数 1 无效的解决办法 update ContentInfo set spcContent=replace(cast(spcContent as varchar(max)),'http://www.buy5188.com/','http://www.epowerchina.com.cn/')

Sqlserver 报错“参数数据类型 ntext/text 对于 replace 函数的参数 1 无效”的解决方案及原理分析扩展

原因:在数据查询中replace函数无法对表table中text/ntext类型的字段colname进行了字符串操作. 解决方法:将text当作varchar(实际内容长度低于8000字节时)或把ntext当作nvarchar(实际内容长度低于4000字节时). 但是当text字段内容长度超过8000或ntext字段内容长度超过4000字节时多出的字节会被截断而忽略掉. 这时我们可以使用max类型来解决这个问题. 原报错代码: 1 update tablename set colname=rep

C语言 结构体作为函数的参数

1)使用结构体变量作为函数的参数 使用结构体变量作为函数的实参时,采用的是值传递,会将结构体变量所占内存单元的内容全部顺序传递给形参,形参必须是同类型的结构体变量 demo: 1 # include <stdio.h> 2 # include <stdlib.h> 3 4 //创建一个Student结构 5 struct Student 6 { 7 char name[30]; 8 float fScore[3]; 9 }student={"dire",98.5

JavaScript把函数作为另一函数的参数

首先说一下这个问题是怎么产生的:今天看排序算法,想要比较不同的排序算法的时间花费. 最简单的时间统计方法是在程序块开始和结束时分别计时,求一下时间差就能得出该段代码的耗时. 如: var foo = function (a, b) { return a + b } var t1 = new Date() foo(1, 2) console.log("cost time:", new Date() - t1) 但是这样有个缺点就是,每测试一个函数,都要写一遍 var t1 = new D

python 复习 4-1 函数、参数、返回值、递归

函数 完成特定功能的一个语句组,这个语句组可以作为一个单位使用,并且给它组语句取一个名子,即函数名 可以通过函数名在程序不同地方多次执行,即函数调用 预定义函数(可以直接使用) 自定义函数(自编写的) 函数的定义: def 函数句([参数列表]): //定义 ``` def hello (): print(hello world) #### 函数的调用: - 函数名([参数列表]) //调用 hello() #### 函数的参数: 形式参数和实际参数 - 在定义函数时,函数名后面的括号中的变量名

求变量的数据类型,typeid,bool,C和C++的不同,new和delete,C++中的枚举,inline和可变参数模板,auto和函数模板,宽字符

求变量的数据类型,通过函数typeid(变量名).name();获得变量的数据类型. 案例如下: #include <iostream> #include <stdlib.h> void main() { double db = 10.9; double *pdb = &db; auto num = pdb; //通过typeid的方式获得数据类型 std::cout << typeid(db).name() << std::endl; std::c

实参和形参的关系、2.函数的参数可以是任意数据类型吗?3。函数的作用域问题

一.实参和形参的关系: 1.什么是实参:在执行函数的时候函数名后面的小括号内的内容就是实参 比如: 例1:function fn(a,b) console.log(a) } fn(5) 例子中的fn(5)就是函数的执行  小括号内的5就是实参 2.什么是形参:在定义函数的时候函数名后面的小括号内的内容就是形参 比如:例1中的function fn(a,b)括号中的 a,b就是形参 *1带参数的函数在定义的时候是先把参数(形参)存到内存中去,再找关键字var 和function存 *2函数在执行的

python04基本数据类型-集合/格式化输出/函数/参数

一.集合 1.定义 由不同元素组成的集合,集合中是一组无序排列的可hash值,可以作为字典的key. 2.特性 集合本身是可变类型,但是集合中的元素必须是不可变类型,并且是不重复的,无序的. 3.作用 关系测试:去重 二.集合的常用方法 1.创建一个集合,有两种方式: #s1 = {1,2,3,3,3,3,4}或者s = set('hello') 2.添加元素 # s1.add(5)# s1.add(6,7,8,9) #只能接收一个值,传4个值会报错 3.清空集合 # s.clear() 4.拷

js函数中参数的传递

先看一道JS的笔试题: var setObj=function(o){ o.name="xiaoming"; o={}; o.name="xiaohong"; } var p={name:"xixi",age:24}; setObj(p); console.log(p); 答案是{name:xiaoming,age24}: 在JavaScript中函数参数默认为引用类型. 在阅读本章节之前建议参阅一下两章节:1.值类型可以参阅javascript