为什么只更新了最后一条数据

xuyiwei2004 xuyiwei2004 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
test 表内共有 5条数据。为什么执行了以下代码只更新了最一个条数据。


declare @pos int

declare @len int

declare @str nvarchar(4000)

declare @des nvarchar(4000)

declare @count int

set @des ='a'--要替换的字符

set @len=len(@des)

set @str= 'b'--要替换成的值

set @count=0--统计次数.

WHILE 1=1

BEGIN

select @pos=patINDEX('%'+@des+'%',txt) - 1

from test --表名

where txt is not null

IF @pos>=0 -- 如果找到 要替换的字符 字符就执行下面的语句

begin

DECLARE @ptrval binary(16)

SELECT @ptrval = TEXTPTR(txt)

from test --表名

where txt is not null --条件

UPDATETEXT test.txt @ptrval @pos @len @str

set @count=@count+1

end

ELSE

break;

END

select @count

...全文

相关推荐

用一条SQL语句将数据表中某列更新到另一个数据表里

用一条SQL语句将数据表中某列更新到另一个数据表里

冷月宫主

Mysql取分组后的每组第一条数据

Mysql取分组后的每组第一条数据 gruop by 分组后 进行 order by mysql会按照 先分组后排序的形式进行输出 并不能做到每组中的第一条数据取出。 我的思路是 : 先将要查询的数据表转换成已经排序的临时表 在进行 分组操作 。 因为在mysql分组是将第一个出现的数据进行展示出。 MySQL会创建临时表的几种情况: 1、UNION查询; 2、用到TEMPTABLE算法或者是UNION查询中的视图; 3、ORDER BY和GROUP BY的子句不一样时; 4、表连接中,ORDER BY的列不是驱动表中的;(指定了联接条件时,满足查询条件的记录行数少的表为[驱动表],未指定联接

weixin_38616033

Listview实现刷新和更新一条或多条数据

Listview实现刷新和更新一条或多条数据,包括添加一条或多条数据的demo合集

天空上尉

给定一条数据,若数据库中有则更新该数据,没有则新增一条数据。使用merge into实现

1.merge into 的语法 MERGE INTO table_name alias1 USING (table | view | sub_query) alias2 ON (join condition) WHEN MATCHED THEN UPDATE table_name SET col1 = col_val1, col2 = col2_val WHEN NOT MATCHED THEN INSERT (column_list) VALUES (column_values);   通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询 条件匹配的进行UPDAT

weixin_38689113

Android编程实现Toast只显示最后一条的方法

本文实例讲述了Android编程实现Toast只显示最后一条的方法。分享给大家供大家参考,具体如下: 在做Android开发中,时不时的可能会用到Toast,但用Toast的时候,连续使用会存在一个问题,就是一条条显示Toast。而不是直接显示最后一条。因此,根据此需求,现在写了ToastUtil这个类,该类中有三个方法供选择。 ToastUtil.Java import android.content.Context; import android.graphics.PixelFormat; import android.os.Handler; import android.os.Loop

weixin_38660327
评论 11
收藏 已收藏
分享
返回顶部
xuyiwei2004
MS-SQL Server 34,876 成员 254,635 内容