这个时候得用游标了。比如:
create proc cursorTest @_id int=0, @_name varchar(50)='' as --创建游标 declare @cursor cursor --设定游标欲 *** 作的数据集 set @cursor=cursor for select _id,_name from users --打开游标 open @cursor --移动游标指向到第一条数据,提取第一条数据存放在变量中 fetch next from @cursor into @_id,@_name --如果上一次 *** 作成功则继续循环 while(@@fetch_status=0)begin -- *** 作提出的数据 print @_name --继续提下一行 fetch next from @cursor into @_id,@_name end --关闭游标 close @cursor --删除游标 deallocate @curso
您好!
假设表为table1查询表的字段
SELECT Column_name as 字段
FROM INFORMATION_SCHEMACOLUMNS
WHERE (TABLE_NAME = table1) group by Column_name
查询字段个数
SELECT count(Column_name)
FROM INFORMATION_SCHEMACOLUMNS
WHERE (TABLE_NAME = 'table1')
如果是纯遍历的话,他们俩没什么两样,速度都差不多。
我觉得你应该仔细考虑一下你的需求,为什么用遍历这种方式呢,耗费的时间不可预料,随着数据的增大,会变得很糟糕。建议你寻找其他方式,比如增加sql查询条件,限制返回的数据数量。
以上就是关于查询数据库时,如何循环显示出所有数据全部的内容,包括:查询数据库时,如何循环显示出所有数据、如何遍历数据库中某表单的字段名、for循环遍历查找数据与sqlite数据库查找数据性能问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)