我是靠谱客的博主 伶俐水池,这篇文章主要介绍mysql主键unsigned,在mysql存储过程中执行unsigned参数的正确方法是什么,现在分享给大家,希望可以做个参考。

我有一个从数据库中所有表中删除用户信息的过程.

CREATE PROCEDURE `unrollme_version3`.`del_user` (in v_user_id int(10))

BEGIN

START TRANSACTION;

DELETE FROM user_table1 WHERE `user_id` = v_user_id;

DELETE FROM user_table2 WHERE `user_id` = v_user_id;

DELETE FROM user_table3 WHERE `user_id` = v_user_id;

COMMIT;

END

我想以某种方式使输入变量仅是无符号的,以匹配数据库结构的设置方式.这可能吗,什么是最佳实践?

解决方法:

只需添加单词unsigned.我删除(10)只是因为它无关紧要.它仅描述了应显示的位数,但始终为4字节的整数.

CREATE PROCEDURE `unrollme_version3`.`del_user` (in v_user_id int unsigned)

BEGIN

START TRANSACTION;

DELETE FROM user_table1 WHERE `user_id` = v_user_id;

DELETE FROM user_table2 WHERE `user_id` = v_user_id;

DELETE FROM user_table3 WHERE `user_id` = v_user_id;

COMMIT;

END

您可以通过执行以下操作来强制抛出错误而不是警告

SET sql_mode='STRICT_ALL_TABLES';

有关更多信息,请参见manual.

标签:mysql,stored-procedures

来源: https://codeday.me/bug/20191101/1982182.html

最后

以上就是伶俐水池最近收集整理的关于mysql主键unsigned,在mysql存储过程中执行unsigned参数的正确方法是什么的全部内容,更多相关mysql主键unsigned,在mysql存储过程中执行unsigned参数内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(128)

评论列表共有 0 条评论

立即
投稿
返回
顶部