Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wushizhenking
CS-Notes
提交
9af4304f
C
CS-Notes
项目概览
wushizhenking
/
CS-Notes
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
CS-Notes
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
9af4304f
编写于
4月 11, 2019
作者:
C
CyC2018
提交者:
GitHub
4月 11, 2019
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #652 from OOCZC/master
Update SQL.md
上级
f35ccb67
4597a6ca
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
28 addition
and
27 deletion
+28
-27
docs/notes/SQL.md
docs/notes/SQL.md
+28
-27
未找到文件。
docs/notes/SQL.md
浏览文件 @
9af4304f
...
...
@@ -570,23 +570,23 @@ WHERE col5 = val;
每次只能给一个变量赋值,不支持集合的操作。
```
sql
delimiter
//
DELIMITER
//
create
procedure
myprocedure
(
out
ret
int
)
begin
declare
y
int
;
select
sum
(
col1
)
from
mytable
into
y
;
select
y
*
y
into
ret
;
end
//
CREATE
PROCEDURE
myprocedure
(
OUT
ret
INT
)
BEGIN
DECLARE
y
INT
;
SELECT
SUM
(
col1
)
FROM
mytable
INTO
y
;
SELECT
y
*
y
INTO
ret
;
END
//
delimiter
;
DELIMITER
;
```
```
sql
call
myprocedure
(
@
ret
);
select
@
ret
;
CALL
myprocedure
(
@
ret
);
SELECT
@
ret
;
```
# 十九、游标
...
...
@@ -603,26 +603,27 @@ select @ret;
4.
关闭游标;
```
sql
delimiter
//
create
procedure
myprocedure
(
out
ret
int
)
begin
declare
done
boolean
default
0
;
DELIMITER
//
CREATE
PROCEDURE
myprocedure
(
OUT
ret
INT
)
BEGIN
DECLARE
done
BOOLEAN
DEFAULT
0
;
declare
mycursor
cursor
for
select
col1
from
mytable
;
DECLARE
mycursor
CURSOR
FOR
SELECT
col1
FROM
mytable
;
#
定义了一个
continue
handler
,当
sqlstate
'02000'
这个条件出现时,会执行
set
done
=
1
declare
continue
handler
for
sqlstate
'02000'
set
done
=
1
;
DECLARE
CONTINUE
HANDLER
FOR
sqlstate
'02000'
SET
done
=
1
;
open
mycursor
;
OPEN
mycursor
;
repeat
fetch
mycursor
into
ret
;
select
ret
;
until
done
end
repeat
;
REPEAT
FETCH
mycursor
INTO
ret
;
SELECT
ret
;
UNTIL
done
END
REPEAT
;
close
mycursor
;
end
//
delimiter
;
CLOSE
mycursor
;
END
//
DELIMITER
;
```
# 二十、触发器
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录