MySQL handler的用法与应用

handler的用法

HANDLER是一个比较低级的语句,具有自己的会话机制,且会话对象不由其他会话共享,且直到会话调用 HANDLER... CLOSE 或会话终止时才关闭

1
2
3
4
5
6
7
8
9
10
HANDLER tbl_name OPEN [ [AS] alias]

HANDLER tbl_name READ index_name { = | <= | >= | < | > } (value1,value2,...)
[ WHERE where_condition ] [LIMIT ... ]
HANDLER tbl_name READ index_name { FIRST | NEXT | PREV | LAST }
[ WHERE where_condition ] [LIMIT ... ]
HANDLER tbl_name READ { FIRST | NEXT }
[ WHERE where_condition ] [LIMIT ... ]

HANDLER tbl_name CLOSE

HANDLER tbl_name OPEN [ [AS] alias]

1
2
handler tablename open;                              /开启tablename表
hand tablename open as new_tablename; /追加tablename的表的别名为new_tablename,此处不是修改,且只在当前会话内生效

HANDLER tbl_name READ index_name { = | <= | >= | < | > } (value1,value2,...)[ WHERE where_condition ] [LIMIT ... ]

1
handler tablename read Keyname=('test1'); /读取tablename表的索引名为Keyname的值为test1的整行信息(每张表都会默认有索引列)

HANDLER tbl_name READ index_name { FIRST | NEXT | PREV | LAST } [ WHERE where_condition ] [LIMIT ... ]

1
handler tablename read listname first;      /读取tablename表的列名为listname的第一个值的整行信息

HANDLER tbl_name READ { FIRST | NEXT } [ WHERE where_condition ] [LIMIT ... ]

1
2
3
handler tablename read first;                  /读取tablename表的第一行信息。
handler tablename read next; /读取tablename表的下一行信息。
handler tablename read first limit 0,2; /读取tablename表的前两行信息。

HANDLER tbl_name CLOSE

1
handler tablename close                    /退出handler会话(它于handler ... open是相对的)

例如:

已知一张表名为tablename,我们可以用下述语句

1
2
3
handler tablename open;
handler tablename read frist;
handler tablename close;

1
2
3
handler  tablename open as test;
handler test read frist;
handler test close;

应用-[强网杯 2019]随便注


猫猫🐱



© 2025 子非鲲 使用 Stellar 创建
共发表 44 篇 Blog · 总计 109.6k 字