How to set size difference in mysql
MySQL database is a commonly used relational database management system used to store and access data in web applications. Data tables in MySQL are case-insensitive, which means that they are not case-sensitive when querying. However, in some cases, we need MySQL to be case sensitive, in which case corresponding settings need to be made. This article will introduce how to set case sensitivity in MySQL.
1. The principle of case sensitivity in MySQL
In MySQL, the name is only regarded as a character, not a word or phrase of the language. Therefore, MySQL does not use case to determine the difference between names. For example, MySQL treats "table1" and "Table1" as the same name.
2. Set MySQL to be case sensitive
- Set it in the my.cnf configuration file
Open the my.cnf configuration file if it does not exist , a new file is created. Add the following code to the file:
[mysqld] lower_case_table_names=1
Save the file and restart the MySQL server. You can make MySQL enforce case sensitivity by setting lower_case_table_names to 1. If it is set to 0, MySQL will not be case sensitive and the default value is 0.
- Set in the command line
For users who do not have permission to modify the MySQL configuration file, they can set it in the MySQL command line. Use the following command on the command line:
SET GLOBAL lower_case_table_names=1;
This will set the lower_case_table_names parameter to 1 globally on the MySQL server. This setting will persist across MySQL server restarts.
Can also be set in the current session using the following command:
SET SESSION lower_case_table_names=1;
This will set the lower_case_table_names parameter to 1 in the current session. This setting will expire at the end of the current session.
3. Notes
- Using the lower_case_table_names=1 parameter will cause the case of sensitive table names to be converted to lower case. If two tables have the same name but are written in different cases, they become the same table when lower_case_table_names=1. Therefore, you need to choose the table name carefully when using this parameter.
- With lower_case_table_names=1, case-sensitive non-binary sorting or lookup rules, such as utf8_bin, cannot be used. This is because lower_case_table_names=1 will convert all characters to lowercase, which will cause case-sensitive sorting or search rules to not work.
- When lower_case_table_names=1 is used, the case-sensitive character set feature is not available. For example, in the latin1_cs or utf8_cs character sets, cs indicates case sensitivity, but lower_case_table_names=1 forces all characters to be converted to lowercase, so the case sensitivity rules will not work.
4. Summary
The default settings of the MySQL database are case-insensitive. However, when you need to be case-sensitive when querying, you can set lower_case_table_names to 1 in the my.cnf configuration file, or use the SET statement in the MySQL command line. But it should be noted that there are some restrictions on using lower_case_table_names=1, which may cause some problems if the table name or character set is not chosen carefully. Therefore, it needs to be used with caution.
The above is the detailed content of How to set size difference in mysql. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

This article explores optimizing MySQL memory usage in Docker. It discusses monitoring techniques (Docker stats, Performance Schema, external tools) and configuration strategies. These include Docker memory limits, swapping, and cgroups, alongside

This article addresses MySQL's "unable to open shared library" error. The issue stems from MySQL's inability to locate necessary shared libraries (.so/.dll files). Solutions involve verifying library installation via the system's package m

The article discusses using MySQL's ALTER TABLE statement to modify tables, including adding/dropping columns, renaming tables/columns, and changing column data types.

This article compares installing MySQL on Linux directly versus using Podman containers, with/without phpMyAdmin. It details installation steps for each method, emphasizing Podman's advantages in isolation, portability, and reproducibility, but also

This article provides a comprehensive overview of SQLite, a self-contained, serverless relational database. It details SQLite's advantages (simplicity, portability, ease of use) and disadvantages (concurrency limitations, scalability challenges). C

This guide demonstrates installing and managing multiple MySQL versions on macOS using Homebrew. It emphasizes using Homebrew to isolate installations, preventing conflicts. The article details installation, starting/stopping services, and best pra

Article discusses configuring SSL/TLS encryption for MySQL, including certificate generation and verification. Main issue is using self-signed certificates' security implications.[Character count: 159]

Article discusses popular MySQL GUI tools like MySQL Workbench and phpMyAdmin, comparing their features and suitability for beginners and advanced users.[159 characters]
