MySQL存储过程中的sql_mode问题

来源:站长家园 时间:2011-01-04 19:50:00 

在my.cnf中设置了sql_mode='STRICT_TRANS_TABLES';

却发现还是有非法数据的写入,比如无符号整数字段本来值是0,还可以减,结果当然溢出了,经检查发现存储过程中默认的sql_mode并没有使用global的sql_mode,测试如下:

CREATE PROCEDURE p_test()
BEGIN
select @@session.sql_mode,@@global.sql_mode;
END;

call p_test();

+--------------------+---------------------+
| @@session.sql_mode | @@global.sql_mode |
+--------------------+---------------------+
| | STRICT_TRANS_TABLES |
+--------------------+---------------------+
1 row in set (0.00 sec)

CREATE PROCEDURE p_test1()
BEGIN
set sql_mode=@@global.sql_mode;

select @@session.sql_mode,@@global.sql_mode;
END;

call p_test1();

+---------------------+---------------------+
| @@session.sql_mode | @@global.sql_mode |
+---------------------+---------------------+
| STRICT_TRANS_TABLES | STRICT_TRANS_TABLES |
+---------------------+---------------------+
1 row in set (0.00 sec)



标签:mysql,存储过程
0
投稿

猜你喜欢

  • 数字人组件反写[asp组件开发实例4]

    2009-06-09 13:20:00
  • 教你在MySQL 5.0以上版本中配置主从库

    2009-01-04 13:17:00
  • 960 Grid System 基本原理及使用方法

    2009-02-28 13:35:00
  • MySQL数据库的23个特别注意事项

    2010-08-08 14:43:00
  • JS+ASP实现无刷新新闻列表之分页

    2007-08-22 12:57:00
  • 设计从"心"开始

    2011-05-21 08:37:00
  • 使用access数据库时可能用到的数据转换

    2008-09-10 12:49:00
  • 不唐突的JavaScript的七条准则[翻译]

    2008-12-09 13:33:00
  • JavaScript 实现 Konami Code

    2009-05-26 12:44:00
  • 讲解数据库管理系统必须提供的基本服务

    2009-01-04 14:33:00
  • 关于数据库的alter table操作和索引概念

    2009-12-15 21:57:00
  • 如何使用表单发送电子邮件?

    2010-05-16 15:13:00
  • ASP判断E-Mail的合法性,以及过滤邮箱字符

    2010-05-27 12:23:00
  • MySQL Explain命令用于查看执行效果

    2009-02-27 15:30:00
  • ASP在线生成电话图片程序

    2007-10-06 23:06:00
  • form表单的submit方法和submit事件

    2008-10-15 11:22:00
  • 带你深入了解Access数据库的4种安全方式

    2008-11-28 14:34:00
  • asp如何实现人民币的大写转换?

    2010-05-24 18:27:00
  • 发一个数字拼图网页游戏

    2008-10-12 10:02:00
  • Linux安装卸载Mysql数据库

    2011-01-29 16:45:00
  • asp之家 网络编程 m.aspxhome.com