Home  >  Article  >  Database  >  How to disable strict mode in MySQL?

How to disable strict mode in MySQL?

王林
王林forward
2023-09-14 18:01:021319browse

如何在 MySQL 中禁用严格模式?

The handling of missing or incorrect values ​​in queries that change data is controlled by MySQL strict mode. These include CREATE TABLE, UPDATE, and INSERT statements. When trying to process a query with MySQL strict mode enabled (the default), invalid or missing data may cause warnings or failures.

When strict mode is turned off, the same query will have its missing or incorrect data modified and will result in a direct warning. This seems to be the desired result, but with strict mode turned off, some activities may have unintended effects. For example, if you add a value and its number of characters exceeds the allowed number, the value will be truncated to fit.

MySQL's strict mode is always on. It can be disabled in a few different ways.

Disable strict mode via SQL

You can use this method to execute the following command to disable strict mode on the MySQL server.

mysql -u root -p -e "SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION';"

Now you can verify that the mode is set by running the following command -

mysql -u root -p -e "SELECT @@GLOBAL.sql_mode;"

Disable strict mode via my.cnf/my.ini:

  • To edit, launch the my.ini or my.cnf file (which file you have depends on whether you are running Windows or Linux).

  • Find the following lines

sql_mode = "STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
  • Change it to the following line:

    If the [mysqld] section is not found, insert the row under that section (if there is no [mysqld] section, create it).

Create mysqlId in the following way:
sql_mode= ""
  • For the modification to take effect, please restart the MySQL service.

    If restarting is not possible now, you can go into the database server and use the commands listed below to make the changes effective immediately. If you do not perform the above steps, the modifications will be lost the next time the MySQL service is restarted.

set global sql_mode='';

Regardless of why the MySQL administrator must disable strict mode, doing so is a simple process. You can use this method to disable MySQL strict mode on the server.

This rule applies to Standard Edition, Standard (Multi-Language) Edition, Enterprise Edition (MySQL), Enterprise Multi-Language Edition (MySQL), Enterprise Edition (SQL Server), and Enterprise Edition (MySQL) (SQL Server)

The above is the detailed content of How to disable strict mode in MySQL?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete