declare @NewID int
declare @au_ID int
declare @username varchar(50)
declare @gender varchar(50)
declare @mobile varchar(50)
declare @email varchar(50)
declare @bday datetime
declare @lastvisit datetime
declare @joindate datetime
DECLARE authors_cursor CURSOR FOR--申明一个游标
select top 2 discuz.dbo.dnt_users.uid
from discuz.dbo.dnt_users
inner join discuz.dbo.dnt_userfields
on discuz.dbo.dnt_users.uid=discuz.dbo.dnt_userfields.uid where len(email)>1
and username not in (
select username from Common.dbo.userinfo
)
OPEN authors_cursor --打开游标
--取出值
FETCH NEXT FROM authors_cursor INTO @au_ID
--set @au_all = @au_line + '/'
--循环取出游标的值
WHILE @@FETCH_STATUS = 0
BEGIN
select @NewID = isnull(MaxID,0) + 1 from [TableMaxIdentity]
where TableName = 'UserInfo'
select @username=username,@gender=case(gender) when 1 then '男' when 2 then '女' else '未知' end,
@mobile=mobile,@email=email,@bday=bday,@lastvisit=lastvisit,@joindate=joindate
from discuz.dbo.dnt_users
inner join discuz.dbo.dnt_userfields
on discuz.dbo.dnt_users.uid=discuz.dbo.dnt_userfields.uid
where discuz.dbo.dnt_users.uid=@au_ID
insert into userinfo( ID,userName, password, name,countryID, provincid, cityid, gender, mobile, email, integral,customtype,LegalRepresentative,Job,ExtendInfo,Birthday,LastLoginTime,UpdateDate,Grade,WorkTel,LogoUrl,Status,IsAgent,IsProvider,RegistDate, cust_src_channel, cust_src_type, isMember, isClient, isLinkMan)
values(@NewID,@username,'5C6EDFB742ADCD00',@username,1001,0,0,@gender
,@mobile,@email,0,1,'','','<UserInfo></UserInfo>',@bday,@lastvisit,getdate(),1001,'','',1,0,0,@joindate,1002,1002,1,0,1)
update [TableMaxIdentity] set MaxID = @NewID where TableName = 'UserInfo'
FETCH NEXT FROM authors_cursor INTO @au_ID
END
CLOSE authors_cursor --关闭游标
DEALLOCATE authors_cursor --释放游标
update dnt_users set password='96e79218965eb72c92a549dd5a330112' where email!=null or len(email)>1 and username!='admin'
分享到:
相关推荐
在sql中,通过id查询出一个字段的值ordernumber,利用游标循环遍历对应字段的值ordernumber1,(比较ordernumber是否存在,存在就在后+'_1',+'_2'...)
sql游标遍历实例
declare cur cursor for select AccountID,EmployeeName from #Temp open cur fetch next from cur into @tmpID, @tmpName fetch next from cur into @tmpID, @tmpName end close cur ...
游标提供了一种对从表中检索出的数据进行操作的灵活手段,就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。
Mysql游标(循环操作)
CN110543495A-游标遍历存储方法及装置.pdf
本文将介绍利用使用表变量和游标实现数据库中表的遍历。 表变量来实现表的遍历 以下代码中,代码块之间的差异已经用灰色的背景标记。 代码如下: DECLARE @temp TABLE ( [id] INT IDENTITY(1, 1) , [Name] VARCHAR(10...
我们可以把游标想象成一张表,想要遍历游标,就要取到游标的每行数据,所以问题的关键就成了:如何取到行数据? 3.解决方案 方式一:FOR 循环(推荐使用) 变形一:遍历显式游标 /* 如果是在存储过程外使用...
matlab开发-图窗口的数据游标。fugure中多轴数据光标支持
DB2游标及动态SQL,异常处理,sqlcode,sqlstate
自己用游标插入数据的测试,可以用于游标来对数据进行批量更改,
测试3条数据 CREATE TABLE test_main ( id INT, value VARCHAR(10), PRIMARY KEY(id) ); INSERT INTO test_main(id, value) VALUES (1, 'ONE'); INSERT INTO test_main(id, value) VALUES (2, 'TWO'); ...
游标(Cursor)是处理数据的一种方法,为了查看或者处理结果集中的数据,游标提供了在结果集中一次以行或者多行前进或向后浏览数据的能力。我们可以把游标当作一个指针,它可以指定结果中的任何位置,然后允许用户对...
什么是游标?游标有什么作用?Oracle游标的类型?Oracle游标的状态有哪些,怎么使用游标属性?如何使用显示游标,?如何遍历循环游标?
使用游标更新数据库
使用存储过程是想循环insert 数据库中查询出来的复杂结果集
该游标用于存储过程中,循环读取数据并插入指定的表中(也可以添加判断插入不同的表)
游标的使用,及自动生成序列号。游标遍历,及定义序列号规则。
LabVIEW游标捕捉数据点坐标事例,主要运用事件来实现点击波形图查看坐标
前言: 前段时间新项目上线为了赶进度很多模块的功能都没有经过详细的测试导致了生成环境中的数据和实际数据...首先使用游标的方式遍历数据可能代码上比较直观,但是代码比较繁琐(声明游标,打开游标,使用游标,关闭