SQL使用游标

//游标选项和特性
1.能使数据只读不该
2.能控制定向操作(向前,第一,最后等)
3.标记某些列可编辑,某些不可编辑
4.规定范围,使游标对某些请求可访问
5.对数据进行复制
游标主要用于交互式应用,用户可以滚动屏幕,对数据进行浏览和更改
//创建游标
SQL Server,My SQL:
DECLARE CustCursor CURSOR
FOR
SELECT * FROM Customers
WHERE cust_email IS NULL
Oracle:
DECLARE CURSOR CustCursor 
IS
SELECT * FROM Customers
WHERE cust_email IS NULL
//使用游标
OPEN CURSOR CustCursor//打开游标
Oracle:
DECLARE TYPE CustCursor IS REF CURSOR
	RETURN Customers%ROWTYPE
DECLARE CustRecord Customers%ROWTYPE
BEGIN 
	OPEN CustCursor;
	LOOP//循环
	FETCH CustCursor INTO CustRecord;//FETCH检索当前行,自动从第一行开始
	EXIT WHEN CustCursor%NOTFOUND;//取不出更多行时终止处理
	CLOSE CustCursor;
END
//使用游标
SQL Server
DECLARE @cust_id CHAR(10)
	      @cust_name CHAR(50)
	      @cust_email CHAR(255)
OPEN CustCursor
FETCH NEXT FROM CustCursor
	INTO @cust_id ,@cust_name,@cust_email 
...
WHILE @@FETCH_STATUS=0
BEGIN
FETCH NEXT FROM CustCursor
	INTO @cust_id ,@cust_name,@cust_email 
...
END
CLOSE CustCursor//关闭游标

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值