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

Kan ikke gemme emoji i databasen

Okay, det lykkedes mig endelig at få det til at fungere! Tak til alle, der prøvede at hjælpe mig, især @Rick James og @Gerard Roche.

FORSLAG:

Hvis du har brug for at arbejde med emoji, lav først simple tests på localhost. Opret en ny database og lav en frisk app til testformål.

Hvis du følger de trin, jeg skrev i spørgsmålet, eller hvis du følger denne vejledning: https://mathiasbynens.be/notes/mysql-utf8mb4#utf8-to-utf8mb4 det skal virke.

Når du arbejder lokalt på en frisk grundlæggende app, vil du have mere kontrol og mere plads til at lave al den test, du har brug for.

LØSNING:

I mit tilfælde var problemet i konfigurationen af ​​databasen i CodeIgniter. Det var ikke korrekt opsætning af char_set og sorteringen til en dum overseelse:Jeg tilsidesatte databaseindstillingerne i funktionen, der gemmer beskeder, for at være sikker på, at den fungerede med den mobile database.

FØR:

function message_save ( $data = FALSE )
{   
    $project_db_config                  = array();
    $project_db_config['hostname']      = 'MY_HOST';
    $project_db_config['username']      = 'MY_USERNAME';
    $project_db_config['password']      = 'MY_PASSWORD';
    $project_db_config['database']      = 'MY_DATABASE';

    $mobile_db                          = $this->load->database( $project_db_config, TRUE );

    // other code to save message       
}

EFTER:

function message_save ( $data = FALSE )
{
    $mobile_db_connection = $this->load->database('admin_mobile_mh', TRUE);

    // other code to save message
}

KOKLUSION:

Appen skal indstille forbindelsen til databasen korrekt. Hvis du har konfigureret databasen korrekt, men du ikke opretter den korrekte forbindelse til din app, vil den ikke fungere.

Så hvis du støder på lignende problemer, skal du sørge for, at api'et konfigurerer char_set korrekt som utf8mb4 og db_collat som utf8mb4_unicode_ci .



  1. Mysql Vælg kun særskilte poster fra seneste datoer

  2. hvordan man bruger kanoniske funktioner i Entity Framework og Mysql

  3. MySQL bestil efter før gruppe efter

  4. SQL-forespørgsel med flere værdier i én celle