Mysql
 sql >> Database >  >> RDS >> Mysql

Come impostare il set di caratteri e le regole di confronto di una colonna in MySQL

In MySQL, puoi specificare il set di caratteri e le regole di confronto a vari livelli. È possibile specificarli a livello di connessione, livello di server, livello di database, livello di tabella e livello di colonna. Puoi anche specificare un confronto nelle tue query in modo che sostituisca qualsiasi confronto che è stato precedentemente specificato ai livelli sopra indicati.

Per impostare il set di caratteri e le regole di confronto a livello di colonna, puoi utilizzare CREATE TABLE istruzione o ALTER TABLE istruzione (a seconda che tu stia creando la tabella o modificandola) e specifica il set di caratteri e le regole di confronto all'interno della definizione della colonna (la colonna su cui desideri impostare il set di caratteri/le regole di confronto).

Imposta il set di caratteri e le regole di confronto

Per impostare il set di caratteri e le regole di confronto di una colonna specifica quando crei una tabella per la prima volta, usa il CHARACTER SET e COLLATE clausole all'interno di CREATE TABLE dichiarazione:

CREATE TABLE Tasks (
    TaskId INT NOT NULL AUTO_INCREMENT,
    TaskName VARCHAR(255) NOT NULL
        CHARACTER SET big5 
        COLLATE big5_chinese_ci,
    PRIMARY KEY (TaskId));

Nota che, invece di specificare il set di caratteri e le regole di confronto per l'intera tabella, lo stiamo specificando solo per una colonna specifica (in questo caso, il TaskName colonna).

Questo esempio imposta il set di caratteri della colonna su big5 e il confronto con big5_chinese_ci . Questo sostituisce qualsiasi confronto predefinito sia stato impostato a livello di database e server.

Modifica il set di caratteri e le regole di confronto

Per modificare il set di caratteri e le regole di confronto di una colonna esistente, usa il CHARACTER SET e COLLATE clausole all'interno di ALTER TABLE dichiarazione:

ALTER TABLE Tasks MODIFY
    TaskName VARCHAR(255)
        CHARACTER SET hebrew
        COLLATE hebrew_general_ci
        NOT NULL;

Questo cambia il set di caratteri della colonna in hebrew e il confronto con hebrew_general_ci .

Controlla la raccolta

In MySQL Workbench, puoi controllare le regole di confronto di una colonna facendo clic con il pulsante destro del mouse sulla sua tabella e selezionando Alter Table... , quindi selezionando la colonna applicabile nel riquadro superiore. Le regole di confronto sono mostrate nei Dettagli colonna riquadro.

Esistono anche diversi modi per controllare le regole di confronto di una colonna utilizzando SQL.