数据类型 text 和 varchar 在 add 运算符中不兼容

原文:数据类型 text 和 varchar 在 add 运算符中不兼容

在SQL Server2005中,使用类似下面的Update语句:


1


UPDATE tb_SmsBlacklist
SET mobile=mobile +','+''

其中mobile为text数据类型,会报错:数据类型 text 和 varchar 在 add 运算符中不兼容,解决方法如下:


1


UPDATE tb_SmsBlacklist
SET mobile=CAST(mobile
AS VARCHAR)
+','+''

就是用CAST函数将text数据类型的数据强制转换成varchar类型,这样语句就可以正确的执行。

时间: 2024-10-12 23:02:32

数据类型 text 和 varchar 在 add 运算符中不兼容的相关文章

数据类型 image 和 nvarchar 在 equal to 运算符中不兼容

问题描述 数据类型image和nvarchar在equalto运算符中不兼容,数据库中的字段格式是image.这怎么解决啊~~ 解决方案 解决方案二:使用linq?怎么会连接image呢?难道你的PK用image类型?解决方案三:在数据库里面改成nvarchar.解决方案四:text改为varchar解决方案五:楼主,解决了没有?我也遇到了一样的问题,怎么解决

System.Data.SqlClient.SqlException: 数据类型 text 和 varchar 在 equal to 运算符中不兼容。

一.引起的源头 环境:vs2015,sqlserver2008 相关程序包:ef6 定义了一个实体article public class Article { public string Data{get;set;} } EntityTypeConfiguration的配置 Property(a => a.Data).IsRequired().HasColumnType("text"); 这样可以正常生成表字段,而且类型也正确插入数据的时候,就引起了以下异常 System.Dat

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

但是我们可以换一种方法解决这个问题.下面就来分析下解决办法. 对text或ntext类型的数据在查询中不能进行字符串操作.这时用得最多的是把text当作varchar(实际内容长度低于8000字节时)或把ntext当作nvarchar(实际内容长度低于4000字节时)来处理.但是这样处理也不是非常妥当毕竟如果text字段内容超过8000了岂不是要被截断或者忽略掉.最终找到了一种方法解决了"参数数据类型 text 对于 replace 函数的参数 1 无效"的问题.下面用一个例子来说明怎

oracle数据类型varchar2和varchar的区别

varchar -- 存放定長的字符數據,最長2000個字符:varchar2 -- 存放可變長字符數據,最大長度為4000字符.   目前没有本质的区别 但是:varchar2是oracle提供的独特的数据类型oracle保证在任何版本中该数据类型向上和向下兼容但不保证varchar,这是因为varchar是标准sql提供的数据类型有可能随着sql标准的变化而改变   2: varchar2 VARCHAR2 Datatype The VARCHAR2 datatype specifies a

rowfilter-RowFilter 模糊查询出现:Like 运算符中出错: 字符串模式“2#%门%”无效。

问题描述 RowFilter 模糊查询出现:Like 运算符中出错: 字符串模式"2#%门%"无效. dv = dt.DefaultView; sWhere += string.Format(" AND ( companyUseRange LIKE '{0}%' or GroupUseRange LIKE '%{0}%')", "2#"+par["GroupUseRangeOther"]); dv.RowFilter = sW

java用正则匹配运算符中的*号报错

问题描述 java用正则匹配运算符中的*号报错 这是用正则匹配一个四则运算算式中有几个数字的程序,将 * 号放在最后可以得出正确结果,但是将 * 号放中间的话就会报错,这是为什么?要怎么改? public class Blank { public static int f(String s) { return s.split("[+-\*/]").length; } public static void main(String[] args) { System.out.println(

Ajax在不同浏览器中的兼容问题(asp.net,ie,firefox)

Ajax在不同浏览器中的兼容问题比较麻烦,我在最近的项目中遇到了这个问题.并且使用了一种奇怪 的方法解决了它,现在拿出来大家讨论讨论: 下面是前端代码: <script type="text/javascript"> var xmlHttp; var as; var state = 0; function mouseover() { var id = "<%=cvE_Mail.ClientID%>"; getajax(); if (as ==

jquery实现图片等比例缩放以及max-width在ie中不兼容解决_jquery

上次用原生的JavaScript实现的图片等比例缩放,max-width和max-height在ie6中不兼容问题,今天用jQuery实现了这些问题 jQuery部分代码 复制代码 代码如下: <script type="text/javascript"> $(document).ready(function(){ var maxWidth=$(".imgBox").width(); $("img").each(function(){

DIV边距属性在Chrome和IE中不兼容问题

做网页编辑的最怕的就是浏览器不兼容性问题,这不今天也让俺碰到了DIV边距属性在Chrome和IE中不兼容问题,具体如下: 今天在单位给某企业网站做页面,然后回家进行修改,首先在IE中打开浏览,晕,惨不忍睹,怎么回事,开始以为是CSS样式没拷过来,查看没丢,一下想到估计是浏览器兼容性问题,最后经仔细查看原因出在div中的padding设置上,具体如下: 如果是以下的设置Chrome和IE的设置没问题 代码如下: div1 { width:960px; margin:0px; padding:0px