精华内容
下载资源
问答
  • --数据游标数据库中起到的就是一个书签的作用,它让一个抽象的成员实例化为一个准确的对象。游标虽好,但是可不能多次使用,运行效率会降低! USE [数据库名] GO Create procedure [dbo].[proc_gitcontent]/...
    
    
    --数据游标在数据库中起到的就是一个书签的作用,它让一个抽象的成员实例化为一个准确的对象。游标虽好,但是可不能多次使用,运行效率会降低!  

    USE
    [数据库名] GO Create procedure [dbo].[proc_gitcontent]//存储过程名称 as declare --声明变量(用于插入数据) @content varchar(max), @sendsuccesscount int, @sendfailecount int, @submitfailcount int, @unknown int, @status int, @userid int, @addtime datetime --定义一个游标cursor(相当于一个书签) declare content_cursor cursor for select Content,userid from tbl_sms_log group by Content,userid declare @sum int set @sum=0 create table #table ( [ID] int identity(1,1) primary key NOT NULL, [Userid] int null,--用户id [content] [varchar](max) null,--内容 [sendsuccess] [int] null,--发送成功 10 [sendfail] [int] null,--发送失败 20 [submitfail] [int] null,--提交失败 2 [unknown] [int] null,--未知数 0 [addtime] [datetime] null--添加时间 ) --打开游标 open content_cursor --读取游标(遍历赋值)(解决重复插入的bug) fetch next from content_cursor into @content,@userid while @@FETCH_STATUS=0 --返回游标执行状态(0表示返回结果成功) begin --发送成功赋值 set @sendsuccesscount=(select COUNT([status]) from tbl_sms_log where status='10' and Content=@content and UserID=@userid group by Content,userid,[status]) --发送失败赋值 set @sendfailecount=(select COUNT([status]) from tbl_sms_log where status='20' and Content=@content and UserID=@userid group by Content,userid,[status]) --提交失败赋值 set @submitfailcount=(select COUNT([status]) from tbl_sms_log where status='2' and Content=@content and UserID=@userid group by Content,userid,[status]) --未知赋值 set @unknown=(select COUNT([status]) from tbl_sms_log where status='0' and Content=@content and UserID=@userid group by Content,userid,[status])
    set @addtime =GETDATE() --set @sum+=1 insert into #table(Userid,content,sendsuccess,sendfail,submitfail,unknown,addtime) values (@userid,@content,@sendsuccesscount,@sendfailecount,@submitfailcount,@unknown,@addtime) fetch next from content_cursor into @content,@userid--游标再次赋值,解决数据重复插入的bug end --关闭游标(decalre content_cursor cursor for) close content_cursor --释放资源 deallocate content_cursor begin select * from #table --关闭游标 end

     

    转载于:https://www.cnblogs.com/Can-daydayup/p/8660996.html

    展开全文
  • 1.数据库游标对象cursor 2.select实例 代码展示: 1 import pymysql 2 conn=pymysql.connect( 3 host='192.168.199.249', 4 port=3306, 5 user='root', 6 passwd='123456', 7 db='imooc...

    1.数据库游标对象cursor

    2.select实例

    代码展示:

     1 import pymysql
     2 conn=pymysql.connect(
     3     host='192.168.199.249',
     4     port=3306,
     5     user='root',
     6     passwd='123456',
     7     db='imooc',
     8     charset='utf8'
     9 )
    10 cursor=conn.cursor()
    11 
    12 sql="select * from user"
    13 cursor.execute(sql)
    14 
    15 rs=cursor.fetchall()
    16 for row in rs:
    17     print('userid=%s,username=%s'% row)
    18 
    19 cursor.close()
    20 conn.close()

    转载于:https://www.cnblogs.com/chenshaoping/p/8563604.html

    展开全文
  • 导读:DB2数据库游标循环是怎么个情况?下文中我将通过一个实例分析,来为大家讲解。预计的循环次数是yh表行数,由于SELECT IID INTO PINT FROM YH WHERE 0=1;不返回任何行,所以at_end后会立刻等于1(只循环一次就...

    导读:DB2数据库游标循环是怎么个情况?下文中我将通过一个实例分析,来为大家讲解。

    预计的循环次数是yh表行数,由于SELECT IID INTO PINT FROM YH WHERE 0=1;不返回任何行,所以at_end后会立刻等于1(只循环一次就退出)。

    DECLARE at_end INT DEFAULT 0;

    DECLARE PIID INTEGER DEFAULT 0 ;

    DECLARE PINT INTEGER DEFAULT 0 ;

    DECLARE not_found CONDITION FOR SQLSTATE '02000';

    --DECLARE PCOUNT INTEGER;

    DECLARE c1 CURSOR FOR

    SELECT IID FROM YH;

    DECLARE CONTINUE HANDLER FOR not_found

    SET at_end = 1;

    OPEN c1;

    SET PCOUNT=0;

    ins_loop:

    LOOP

    FETCH c1 INTO PIID;

    IF at_end <>0 THEN

    LEAVE ins_loop;

    END IF;

    SET PCOUNT=PCOUNT+1;

    SELECT IID INTO PINT FROM YH WHERE 0=1;

    END LOOP;

    本文是将DB2数据库这种相对来说抽象的技术具体化,应用实例分析使问题更容易理解,希望大家能够从文中总结出什么,并应用于工作中,希望能够帮助到大家。

    【编辑推荐】

    【责任编辑:迎迎 TEL:(010)68476606】

    点赞 0

    展开全文
  • 关于数据库游标

    2020-05-26 20:15:13
    实例: --修改消费等级这个字段 --当消费金额》1000,等级大客户 --500-1000包含500,不包括1000 等级中等客户 --小于500 小客户 --怎么去实现 --声明游标 declare cur_cust_level Cursor for select id,...

    定义: 游标是SQL 的一种数据访问机制。可以将游标简单的看成是查询的结果集的一个指针,可以根据需要在结果集上面来回滚动,浏览需要的数据。

    实例:

    在这里插入图片描述

    --修改消费等级这个字段
    --当消费金额》1000,等级大客户
    --500-1000包含500,不包括1000 等级中等客户
    --小于500 小客户
    --怎么去实现
    --声明游标
    declare cur_cust_level Cursor 
    for select id,CousumeAmount from  Customers
    --打开游标
    open cur_cust_level
    --浏览数据,取数据ID,ConsumeAccount
    --取数据
    declare @id int
    declare @Cacount int
    fetch next from cur_cust_level into @id,@Cacount
    --循环往下
    while(@@FETCH_STATUS=0)
    begin
    --print @id+@Cacount
    --修改消费等级
    if(@Cacount<500)
      update Customers set CousumeLeve='低消费' where id=@id
      else if(@Cacount<1000)
      update Customers set CousumeLeve='中消费' where id=@id
      else
      update Customers set CousumeLeve='高消费' where id=@id
      fetch next from cur_cust_level into @id,@Cacount
    end
    --关闭游标
    close cur_cust_level
    --释放游标
    deallocate cur_cust_level
    select * from Customers
    

    效果:

    在这里插入图片描述

    展开全文
  • 本文我们主要介绍了Oracle数据库的五种类型的游标的使用,这五种游标分别是:隐式游标、显式游标、REF CURSOR、BULK SQL和动态性能表V$OPEN_CURSOR,希望能够对您有所帮助。   游标是SQL的一个内存工作...
  • 实例为根据商品分类更新商品代码。DECLARE @sortcode varchar(20), @i int, @templetesortcode varchar(20) ,@goodscode varchar(20),@flowno char(3)select @templetesortcode = , @i = 0,@flowno = DECLARE c_...
  • 什么是游标游标是SQL 的一种数据访问机制...实例 –声明游标 declare cur_cust_level Cursorfor select ID,ConsumerAmount from Customers –打开游标 open cur_cust_level –浏览数据,取数据ID,CustomerAccount.
  • 起原:赛迪网作者:小桥 本文中的存储历程示例,估计的轮回次数是yh表行数,因为SELECT IID INTO PINT FROM YH WHERE 0=1;不前往任何行,所以at_end后会立时即是1(只轮回一次就到场)。 ...
  • 源头:赛迪网作者:小桥 本文中的存储进程示例,预计的轮回次数是yh表行数,由于SELECT IID INTO PINT FROM YH WHERE 0=1;不前往任何行,所以at_end后会立即等于1(只轮回一次就加入)。 ...
  • oracle游标实例

    2013-01-09 17:14:10
    关于oracle数据库隐式游标、显式游标相关用法的详细实例,还不错
  • PostgreSQL数据库游标文章快速说明索引游标 (Cursor) 简介游标 (Cursor) 使用游标 (Cursor) 特性 文章快速说明索引 学习目标: 熟练掌握PostgreSQL数据库 游标(cursor)的使用说明及特性总结 注:翻看全网的关于...
  • 游标实例

    2009-08-26 11:16:00
    游标是一个数据库中的另类,但是有时候不得不用,如果要一行一行处理数据的时候,在服务器端处理,我们不得不用它。 不得不注意的是:它复杂和低效,尤其在数量量大时候及其明显 游标中,只读、单向的游标速度最快...
  • oracle 游标实例

    2015-12-31 17:23:16
    游标用来处理从数据库中检索的多行记录(使用SELECT语句)。利用游标,程序可以逐个地处理和遍历一次检索返回的整个记录集。 为了处理SQL语句,Oracle将在内存中分配一个区域,这就是上下文区。这个区包含了已经...
  • oracle中 游标实例

    2016-01-08 10:01:00
    游标-----内存中的一块区域,存放的是select的结果 游标用来处理从数据库中检索的多行记录(使用SELECT语句)。利用游标,程序可以逐个地处理和遍历一次检索返回的整个记录集。 为了处理SQL语句,Oracle将在内存中...
  • 实例如下:DROP PROCEDURE IF EXISTS pr_change_station_user_acct_his; -- 如果存在存储过程,即删除存储过程create procedure pr_change_station_user_acct_his (in number int) -- 创建存储过程,存储过程的变量...
  • 本文实例讲述了mysql游标的原理与用法。分享给大家供大家参考,具体如下:本文内容:什么是游标创建游标使用游标首发日期:2018-04-18什么是游标:如果你前面看过mysql函数,会发现无法使用返回多行结果的语句。但...
  • 概述:游标只读取结果集数据,一行一行的读取,而且只能从头开始一行行往尾部读取,不能从中任意读取,而如果重新使用则从第一个开始。使用前必先定义,具体模板看代码。作用是遍历结果集。 存储过程blog(点击) ...
  • 数据库游标的使用

    千次阅读 2013-01-02 16:00:42
    实例:某学校有多个班级,而每个班级里有多个学生。现在我们要完成这样一件事,假如有一天,这个学校不存在了,那么属于这个学校的班级也就不存在了,同理,这些班里的学生也就不再属于这个班了。 需求明白了,...
  • 游标使用实例过程

    2012-10-25 14:17:08
    平时写数据库过程时,很多时候需要用到游标,下面给出一个游标使用实例游标的使用很简单。 首先定义游标:  Type t_cursor Is Ref Cursor; --声明游标  v_cursor t_cursor; --定义游标 定义好后,在过程里就...
  • 数据库总结五游标

    2010-05-13 21:17:39
    create table users(  id int primary key not null,  name varchar(50) null ) insert into users values(1,'dabing') insert into users values(2,'sunrongguan')...--游标实例 create procedure cursorTe...
  • 实例如下: DROP PROCEDURE IF EXISTS pr_change_station_user_acct_his; -- 如果存在存储过程,即删除存储过程 create procedure pr_change_station_user_acct_his (in number int) -- 创建存储过程,存储过程的...
  • 游标(cursor)是数据库系统在内存中开设的一个数据缓冲区,存放SQL语句的执行结果。 每个游标都有一个名字,用户可以用SQL语句逐一从游标中获取记录,并赋给变量做进一步处理。 作用:用于定位结果集的行 和 ...
  • 描述了一个很全的数据库开发过程,并有SQL脚本,包括存储过程和游标实例
  • 临时表在大数据量时会比游标使用的资源少。还是要看具体情况了。也有可能在实际优化过程中相互替换呢。 留作记忆的代码如下: 1 if object_id('tempdb..#Tmp') is not null 2 Begin 3 drop table #Tmp 4 ...
  • SQL语句实现跨Sql server数据库操作实例 - 查询远程SQL,本地SQL数据库与远程SQL的数据传递,利用游标逐条数据添加,方便快捷!

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 557
精华内容 222
关键字:

数据库游标实例