mysql 存储过程中获取sql执行状态码
时间: 2023-11-10 21:04:21 浏览: 278
在 MySQL 存储过程中,可以使用 `DECLARE` 语句声明一个变量,然后使用 `GET DIAGNOSTICS` 语句获取 SQL 执行状态码。
下面是一个示例:
```
DELIMITER //
CREATE PROCEDURE my_proc()
BEGIN
DECLARE status_code INT;
-- 执行 SQL 语句
INSERT INTO my_table (id, name) VALUES (1, 'John');
-- 获取执行状态码
GET DIAGNOSTICS status_code = ROW_COUNT;
-- 输出状态码
SELECT status_code;
END//
DELIMITER ;
```
在上面的例子中,我们声明了一个名为 `status_code` 的整数变量,然后在执行 SQL 语句后使用 `GET DIAGNOSTICS` 语句将 `ROW_COUNT` 存储在变量中。最后,我们输出了变量的值,即 SQL 执行的状态码。
需要注意的是,`GET DIAGNOSTICS` 语句只能在存储过程中使用,不能在普通的 SQL 查询中使用。
阅读全文