MySQL伺服器的SQL模式

來源:互聯網
上載者:User

sql_mode的系統變數可以調控MySQL的SQL模式

任何一個用戶端可以在不影響其它用戶端的情況下改變MySQL伺服器對自己的反應

如果想在MySQL啟動時設定SQL模式,可以在mysql設定檔中添加sql_mode選項

sql-mode=”TRADITIONAL”

如果在運行過程中修改SQL模式,則可以使用如下命令

setsql_mode="TRADITIONAL";

 

Client1

mysql> show variables like "sql_mode";

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| sql_mode      |      |

+---------------+-------+

1 row in set (0.00 sec)

 

mysql> set sql_mode="TRADITIONAL";

Query OK, 0 rows affected(0.23 sec)

 

mysql> show variables like "sql_mode";

+---------------+------------------------------------------------------------------------------------------------------------------------------------------------------+

|Variable_name     |                                                                Value                                                                                                                                               |

+---------------+------------------------------------------------------------------------------------------------------------------------------------------------------+

|sql_mode  |STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION|

+---------------+------------------------------------------------------------------------------------------------------------------------------------------------------+

1 rowin set (0.00 sec)

 

mysql>

 

Client2

Client1已經修改了SQL模式,但是Client2的SQL模式沒有改變,這就說明用戶端之間的模式修改是互相不影響的

mysql> show variables like "sql_mode";

+---------------+-------+

| Variable_name | Value |

+---------------+-------+

| sql_mode      |      |

+---------------+-------+

1 row in set (0.00 sec)

 

mysql>

 

設定全域變數(設定全域變數設定,需要加上GLOBAL關鍵字,需要SUPER許可權)

mysql> set globalsql_mode="traditional";

Query OK, 0 rows affected(0.02 sec)

select@@session.sql_mode   --》查看當前會話sql模式

select@@GLOBAL.sql_mode --》查看系統會話sql模式

設定全域變數後,新串連的用戶端預設的就是全域的SQL模式

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.