<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        關于mysql嚴格模式StrictMode的說明講解

        來源:懂視網 責編:小采 時間:2020-11-09 08:42:53
        文檔

        關于mysql嚴格模式StrictMode的說明講解

        關于mysql嚴格模式StrictMode的說明講解:1.開啟與關閉Strict Mode方法找到mysql安裝目錄下的my.cnf(windows系統則是my.ini)文件在sql_mode中加入STRICT_TRANS_TABLES則表示開啟嚴格模式,如沒有加入則表示非嚴格模式,修改后重啟mysql即可例如這就表示開啟了嚴格模式: sql_mode=N
        推薦度:
        導讀關于mysql嚴格模式StrictMode的說明講解:1.開啟與關閉Strict Mode方法找到mysql安裝目錄下的my.cnf(windows系統則是my.ini)文件在sql_mode中加入STRICT_TRANS_TABLES則表示開啟嚴格模式,如沒有加入則表示非嚴格模式,修改后重啟mysql即可例如這就表示開啟了嚴格模式: sql_mode=N

        1.開啟與關閉Strict Mode方法

        找到mysql安裝目錄下的my.cnf(windows系統則是my.ini)文件

        在sql_mode中加入STRICT_TRANS_TABLES則表示開啟嚴格模式,如沒有加入則表示非嚴格模式,修改后重啟mysql即可

        例如這就表示開啟了嚴格模式:
        sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

        2.Strict Mode功能說明

      1. 不支持對not null字段插入null值

      2. 不支持對自增長字段插入”值

      3. 不支持text字段有默認值

      4. 3.例子:

        創建數據表方便測試

        CREATE TABLE `mytable` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) NOT NULL, `content` text NOT NULL, PRIMARY KEY (`id`)
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

        1.not null字段插入null值測試

        插入一條記錄,name的值為null

        在非嚴格模式下執行

        mysql> insert into mytable(content) values('programmer');
        Query OK, 1 row affected, 1 warning (0.00 sec)mysql> select * from mytable;
        +----+------+------------+| id | name | content |
        +----+------+------------+| 1 | | programmer |
        +----+------+------------+1 row in set (0.00 sec)

        執行成功,name的值自動轉為”

        在嚴格模式下執行

        mysql> insert into mytable(content) values('programmer');ERROR 1364 (HY000): Field 'name' doesn't have a default value

        執行失敗,提示字段name不能為null值

        2.自增長字段插入”值測試

        對id字段插入”值

        在非嚴格模式下執行

        mysql> insert into mytable(id,name,content) value('','fdipzone','programmer');
        Query OK, 1 row affected, 1 warning (0.00 sec)mysql> select * from mytable;
        +----+----------+------------+| id | name | content |
        +----+----------+------------+| 1 | fdipzone | programmer |
        +----+----------+------------+1 row in set (0.00 sec)

        執行成功

        在嚴格模式下執行

        mysql> insert into mytable(id,name,content) value('','fdipzone','programmer');
        ERROR 1366 (HY000): Incorrect integer value: '' for column 'id' at row 1

        執行失敗,提示字段id不能為”

        mysql> insert into mytable(id,name,content) value(null,'fdipzone','programmer');
        Query OK, 1 row affected (0.00 sec)mysql> select * from mytable;
        +----+----------+------------+| id | name | content |
        +----+----------+------------+| 1 | fdipzone | programmer |
        +----+----------+------------+1 row in set (0.00 sec)

        字段id為null則可執行成功

        3.text字段默認值測試

        創建一個數據表mytable,其中text設置默認值default=”

        在非嚴格模式下執行

        mysql> CREATE TABLE `mytable` ( -> `id` int(11) NOT NULL AUTO_INCREMENT, -> `name` varchar(20) NOT NULL, -> `content` text NOT NULL default '', -> PRIMARY KEY (`id`) -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;Query OK, 0 rows affected, 1 warning (0.03 sec)mysql> show tables;
        +------------------------------+| Tables_in_test_version |
        +------------------------------+| mytable |
        +------------------------------+

        執行成功

        在嚴格模式下執行

        mysql> CREATE TABLE `mytable` ( -> `id` int(11) NOT NULL AUTO_INCREMENT, -> `name` varchar(20) NOT NULL, -> `content` text NOT NULL default '', -> PRIMARY KEY (`id`) -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
        ERROR 1101 (42000): BLOB/TEXT column 'content' can't have a default value

        執行失敗,提示content字段是TEXT類型,不能使用默認值。
        總結,使用mysql嚴格模式可以使數據更加安全嚴格,缺點是減少了對空數據入庫的兼容性。建議開發環境使用嚴格模式以提高代碼的質量及對數據的嚴謹性。

        本文關于mysql 嚴格模式 Strict Mode的說明講解嗎,更對相關推薦請關注Gxl網。

        相關推薦:

        php使用explode分割字符串新手容易忽略的問題的講解

        關于mysql互換表中兩列數據方法的講解

        如何通過php生成0~1隨機小數方法

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        關于mysql嚴格模式StrictMode的說明講解

        關于mysql嚴格模式StrictMode的說明講解:1.開啟與關閉Strict Mode方法找到mysql安裝目錄下的my.cnf(windows系統則是my.ini)文件在sql_mode中加入STRICT_TRANS_TABLES則表示開啟嚴格模式,如沒有加入則表示非嚴格模式,修改后重啟mysql即可例如這就表示開啟了嚴格模式: sql_mode=N
        推薦度:
        標簽: 關于 mysql 嚴格
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 免费人成大片在线观看播放电影| 国产麻豆视频免费观看| 在线看片人成视频免费无遮挡| 亚洲视频免费一区| 嘿嘿嘿视频免费网站在线观看| 亚洲国产精品免费视频| 毛片无码免费无码播放| 亚洲性一级理论片在线观看| 99热在线观看免费| 亚洲欧洲中文日产| 免费高清在线爱做视频| 亚洲av永久无码| 免费在线观看理论片| 丝袜足液精子免费视频| 亚洲高清国产AV拍精品青青草原| 亚洲一区二区在线免费观看| 久久国产亚洲高清观看| 免费看片在线观看| 国产成人综合久久精品亚洲| 国产亚洲色视频在线| 免费看少妇高潮成人片| 亚洲欧洲久久精品| 免费一级毛片不卡不收费| 人人鲁免费播放视频人人香蕉| 亚洲午夜久久久影院| 69pao强力打造免费高清| 国产精品亚洲片在线va| 午夜亚洲av永久无码精品| 任你躁在线精品免费| 亚洲国产综合专区电影在线| 美女被cao免费看在线看网站| 女bbbbxxxx另类亚洲| 国产精一品亚洲二区在线播放 | 精品剧情v国产在免费线观看| 亚洲高清乱码午夜电影网| 2048亚洲精品国产| 免费无码一区二区三区| 亚洲久热无码av中文字幕| 亚洲av无码一区二区三区乱子伦| 一二三四免费观看在线视频中文版| 深夜福利在线免费观看|