表結構:People表,PeopleDetail表sql
1.簡單遊標fetch
declare m_cursor cursor scroll for select Address,PeopleId from PeopleDetail open m_cursor declare @Address varchar(50), @PeopleId int fetch next from m_cursor into @Address,@PeopleId while @@FETCH_STATUS=0 begin print @Address + convert(varchar(3), @PeopleId) fetch next from m_cursor into @Address,@PeopleId end close m_cursor deallocate m_cursor
2.用於更新的遊標 blog
-- 定義遊標 declare m_cursor cursor scroll for select a.Id,b.Address from People a left join PeopleDetail b on a.Id=b.PeopleId for update -- 打開遊標 open m_cursor declare @Address varchar(50), @Id int --填充數據 fetch next from m_cursor into @Id,@Address --假如檢索到了數據,才處理 while @@FETCH_STATUS=0 begin update People set Address=@Address where current of m_cursor --填充下一條數據 fetch next from m_cursor into @Id,@Address end -- 關閉遊標 close m_cursor --釋放遊標 deallocate m_cursor