Làm cách nào để thay đổi tên bảng thành chữ hoa trong bàn làm việc mysql?

Câu lệnh MySQL sau trả về các hàng đó từ bảng nhà xuất bản có nhà xuất bản không thuộc quốc gia Hoa Kỳ. Cột pub_name và các giá trị của tên nhà xuất bản viết hoa đã được hiển thị ở đầu ra

Độ nhạy trường hợp của tên đối tượng là khác nhau đối với SQL Server và Amazon Aurora MySQL-Compatible Edition (Aurora MySQL). Tên đối tượng SQL Server phân biệt chữ hoa chữ thường được xác định bởi bộ sưu tập. Tên Aurora MySQL có phân biệt chữ hoa chữ thường và có thể được điều chỉnh dựa trên tham số được đề cập sau đây

Trong Aurora MySQL, độ nhạy trường hợp được xác định bởi giá trị tham số lower_case_table_names. Nói chung có 3 giá trị có thể cho tham số này. Để tránh một số sự cố, bạn chỉ có thể sử dụng hai giá trị với tham số này

  • 0 — tên được lưu dưới dạng đã cho và so sánh phân biệt chữ hoa chữ thường. Bạn có thể chọn giá trị này cho tất cả các phiên bản Amazon Relational Database Service (Amazon RDS) for MySQL

  • 1 — tên được lưu trữ bằng chữ thường và so sánh không phân biệt chữ hoa chữ thường. Bạn có thể chọn giá trị này cho Amazon RDS for MySQL phiên bản 5. 6, phiên bản 5. 7 và phiên bản 8. 0. 19 trở lên 8. 0 phiên bản

Tham số lower_case_table_names phải được đặt thành một phần của nhóm tham số DB tùy chỉnh trước khi tạo phiên bản DB. Bạn nên tránh thay đổi tham số lower_case_table_names đối với các phiên bản cơ sở dữ liệu hiện có vì làm như vậy có thể gây ra sự không nhất quán với các bản sao lưu phục hồi tại thời điểm và các phiên bản sao chép cơ sở dữ liệu đã đọc

Bản sao chỉ có quyền đọc phải luôn sử dụng cùng một giá trị tham số lower_case_table_names như phiên bản CSDL nguồn

Theo mặc định, tên đối tượng đang được lưu trữ bằng chữ thường cho MySQL. Trong hầu hết các trường hợp, bạn sẽ muốn sử dụng các chuyển đổi AWS Database Migration Service để thay đổi tên lược đồ, bảng và cột thành chữ thường

ví dụ

Ví dụ: để tạo một bảng có tên EMPLOYEES viết hoa trong MySQL, bạn nên sử dụng như sau

CREATE TABLE EMPLOYEES (
    EMP_ID NUMERIC PRIMARY KEY,
    EMP_FULL_NAME VARCHAR(60) NOT NULL,
    AVG_SALARY NUMERIC NOT NULL);

Lệnh sau tạo một bảng có tên là employee viết thường

CREATE TABLE employees (
    EMP_ID NUMERIC PRIMARY KEY,
    EMP_FULL_NAME VARCHAR(60) NOT NULL,
    AVG_SALARY NUMERIC NOT NULL);

MySQL sẽ tìm tên đối tượng với phân biệt chữ hoa chữ thường chính xác như được viết trong truy vấn

Bạn có thể tắt phân biệt chữ hoa chữ thường của tên bảng trong MySQL bằng cách đặt tham số lower_case_table_names thành 1. Cột, chỉ mục, quy trình được lưu trữ, tên sự kiện và bí danh cột không phân biệt chữ hoa chữ thường trên cả hai nền tảng

Khi giá trị của tham số cơ sở dữ liệu nguồn Lower_case_table_names được đặt thành 1, cơ sở dữ liệu hoặc bảng có tên chứa chữ hoa không thể được di chuyển

Nguyên nhân có thể

Khi giá trị của Lower_case_table_names trong cơ sở dữ liệu nguồn là 1, công cụ MySQL sẽ chuyển đổi tên cơ sở dữ liệu hoặc tên bảng thành chữ thường. Trong trường hợp này, có thể không tìm thấy cơ sở dữ liệu hoặc bảng, dẫn đến truy vấn không thành công. Đơn giản, nếu giá trị của Lower_case_table_names là 1, cơ sở dữ liệu hoặc bảng chứa các chữ hoa có thể không truy cập được

Các giải pháp

Hai giải pháp được cung cấp như sau

Giải pháp 1

Thay đổi giá trị của Lower_case_table_names trong cơ sở dữ liệu nguồn thành 0 (phân biệt chữ hoa chữ thường) và đảm bảo rằng giá trị của tham số này trong cơ sở dữ liệu nguồn giống với giá trị trong cơ sở dữ liệu đích

Giải pháp 2

Nếu giá trị của Lower_case_table_names không thể thay đổi vĩnh viễn, hãy thay đổi giá trị thành 0, sau đó thực hiện các thao tác sau

  • Đối với một bảng, bạn có thể sử dụng câu lệnh sau để chuyển tên bảng thành chữ thường.
    alter table `BigTab` rename to `bigtab`
  • Đối với cơ sở dữ liệu, bạn cần xuất dữ liệu cơ sở dữ liệu, thay đổi tên cơ sở dữ liệu từ chữ hoa thành chữ thường, sau đó nhập dữ liệu

Làm cách nào để thay đổi tên bảng thành chữ hoa trong bàn làm việc mysql?

Sau khi thay đổi tên cơ sở dữ liệu hoặc tên bảng, bạn cần duy trì tính nhất quán của quyền mà không ảnh hưởng đến quyền truy cập ứng dụng

Bây giờ hãy sử dụng cơ sở dữ liệu có hai bảng. Tên cơ sở dữ liệu như sau “ bothinnodbandmyisam”. Cơ sở dữ liệu này có các bảng sau -

Mô tả của bảng nhân viên như sau -

mysql> desc employee;

Sau đây là đầu ra. Giả sử chúng ta có các cột sau trong bảng sinh viên không viết thường -

Tên bảng chữ hoa trong Mysql đi kèm với xampp



Dưới đây là các bước chung được thực hiện trong video trên. (Không phải các bước chính xác)

Trước tiên hãy kiểm tra giá trị biến mặc định trong Mysql

  1. Mở bảng điều khiển xampp . Bắt đầu mysql.
  1. Mở Shell từ bảng điều khiển xampp .
  1. Đăng nhập vào cơ sở dữ liệu mysql .
  1. Thực hiện lệnh dưới đây để lấy giá trị mặc định từ máy chủ mysql
  2. show variables where variable_name = "lower_case_table_names";
    Ở trên sẽ trả về kết quả tương tự như bên dưới
    +------------------------+-------+
    | Variable_name          | Value |
    +------------------------+-------+
    | lower_case_table_names | 1     |
    +------------------------+-------+
    1 row in set (0.37 sec)
  1. Để đặt tên bảng thành chữ hoa, chúng ta cần thay đổi giá trị của biến lower_case_table_names từ 1 thành 2.

Thay đổi giá trị biến

  1. Mở của tôi. ini từ bảng điều khiển xampp .
  1. Tìm văn bản cho [mysqld] trong tệp.
  1. Thêm văn bản bên dưới vào dòng tiếp theo sau văn bản [mysqld] và lưu tệp.
  2. lower_case_table_names=2
    Sau khi áp dụng các thay đổi ở trên, phần cấu hình sẽ giống như bên dưới
    # The MySQL server
    [mysqld]
    lower_case_table_names=2
  1. Khởi động lại mysql từ bảng điều khiển xampp .

Hãy thử tạo bảng với tên viết hoa

Dưới đây là dãy sql dùng để tạo database và table

    ________số 8_______
    Tài liệu tham khảo hoặc các trang web được hiển thị trong video
  1. đổi-tên-bảng-thành-chữ-thường

Quảng cáo

Như thế này

Thích Đang tải.

Có liên quan

201605 /04 DANH MỤC Công nghệ thông tin
mysqlTAGSWindows 10

Làm cách nào để TẠO BẢNG bằng chữ hoa trong MySQL?

Để đặt tên bảng thành chữ hoa, chúng ta cần thay đổi giá trị của biến Lower_case_table_names từ 1 thành 2 .

Làm cách nào để thay đổi Lower_case_table_names trong MySQL?

Tên bảng chữ thường MySQL nhạy cảm trong linux .
Nhập vào thiết bị đầu cuối của bạn. Sudo vim /etc/mysql/my. cnf
Chỉnh sửa tệp thêm mục Lower_case_table_names=1 ngay dưới định nghĩa nhóm. [mysqld] Lower_case_table_names=1
Nó sẽ giống như. .
Khởi động lại mysql. .
Vui thích

Làm cách nào để đặt tên bảng chữ thường 1 trong MySQL Workbench?

Làm cách nào để đặt tên bảng MySQL không phân biệt chữ hoa chữ thường? .
Điều hướng đến và mở /etc/mysql/my. tập tin cnf
Đặt biến MySQL Lower_case_table_names=1
Khởi động lại máy chủ

Lower_case_table_names trong MySQL là gì?

Sử dụng Lower_case_table_names=0 trên Unix và Lower_case_table_names=2 trên Windows. Điều này bảo tồn chữ cái của cơ sở dữ liệu và tên bảng. Điều bất lợi của điều này là bạn phải đảm bảo rằng các câu lệnh của bạn luôn đề cập đến tên bảng và cơ sở dữ liệu của bạn với ký tự chính xác trên Windows