<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
        主站蜘蛛池模板: 午夜无遮挡羞羞漫画免费| 免费看h片的网站| va亚洲va日韩不卡在线观看| 中文字幕在线观看亚洲日韩| 久久久久免费看黄A片APP| 99热亚洲色精品国产88| 妞干网免费观看视频| 亚洲av永久中文无码精品综合| 日本人的色道www免费一区| 色欲aⅴ亚洲情无码AV| 免费永久在线观看黄网站| 黄色网址在线免费观看| 久久久久亚洲AV无码专区桃色| 国产一级婬片A视频免费观看| 久久精品国产亚洲av四虎| 97青青草原国产免费观看| 亚洲午夜精品在线| 国产精品免费看久久久无码| 极品美女一级毛片免费| 亚洲色精品aⅴ一区区三区| 最近中文字幕免费2019| 亚洲资源最新版在线观看| 国产一区二区免费在线| 99re6在线精品免费观看| 亚洲视频免费在线看| 精品国产精品久久一区免费式| 免费人成视频在线播放| 久久精品国产亚洲一区二区| 色影音免费色资源| 新最免费影视大全在线播放| 亚洲AV无码精品色午夜果冻不卡| 最近最好最新2019中文字幕免费| 亚洲欧洲日本在线观看 | 夜夜爽妓女8888视频免费观看| 国产亚洲成av片在线观看| ww在线观视频免费观看| 黄色免费在线观看网址| 无码乱人伦一区二区亚洲| 国外成人免费高清激情视频| 老司机精品免费视频| 亚洲色大成网站www久久九|