码迷,mamicode.com
首页 > 数据库 > 详细

mysql之SQL模型

时间:2015-07-29 06:43:54      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:mysql   sql mode   

SQL模型(SQL mode):
    通过定义某些规定,限制用户行为,并定义对应的处理机制。

    常见的模型:
        ANSI
            宽松模式,对插入数据进行校验,如果不符合定义类型或长度,对数据类型调整或截断保存,报warning警告。

        TRADITIONAL
            严格模式,当向mysql数据库插入数据时,进行数据的严格校验,保证错误数据不能插入,报error错误。用于事物时,会进行事物的回滚。

        STRICT_TRANS_TABLES
            严格模式,进行数据的严格校验,不允许向一个支持事物的表中插入非法数据,报error错误。

        STRICT_ALL_TABLES
            未设置的情况下,所有的非法数值都允许,返回警告信息。设置以后只要违反数据规则,都不允许填入,并返回错误。

        ANSI QUOTES
            双引号和反引号作用相同,只能用来引用字段名称/表名等,单引号只能引用在字符串。mysql中默认3者可以随意引用。

        IGNORE_SPACE
            在内建函数中忽略多余空格


    查看默认的模型:
        mysql>SHOW GLOBAL VARIABLES LIKE ‘sql_mode‘;

    修改模型:
        mysql>SET SESSION sql_mode=MODE1,...; 修改当前会话级别
        或者
        #vim /etc/my.cnf 配置文件中修改全局级别
            sql_mode=MODE1,...

    实例:
        1.查看全局和会话的sql_mode的值
            mysql>SHOW GLOBAL VARIABLES LIKE ‘sql_mode‘;
            mysql>SHOW VARIABLES LIKE ‘sql_mode‘;
            或
            mysql>SELECT @@global.sql_mode;
            mysql>SELECT @@session.sql_mode;

        2.修改sql_mode的值为strict_all_tables,并验证动态调整生效情况。
            mysql>SET GLOBAL sql_mode=‘strict_all_tables‘;
            mysql>SELECT @@session.sql_mode;
            mysql>SELECT @@global.sql_mode;
                STRICT_ALL_TABLES
            mysql>quit;

            #mysql -uroot -p
            mysql>SELECT @@session.sql_mode;
                STRICT_ALL_TABLES

            mysql>SET SESSION sql_mode=‘strict_trans_tables‘;
            mysql>SELECT @@session.sql_mode;
                STRICT_TRANS_TABLES
            mysql>SELECT@@global.sql_moed;
                STRICT_ALL_TABLES
            mysql>quit;

            #mysql -uroot -p
            mysql>SELECT @@session.sql_mode;
                STRICT_ALL_TABLES

本文出自 “小私的blog” 博客,请务必保留此出处http://ggvylf.blog.51cto.com/784661/1679327

mysql之SQL模型

标签:mysql   sql mode   

原文地址:http://ggvylf.blog.51cto.com/784661/1679327

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!