How to insert Spanish characters in MySQL?

16,164

please take a look at this

it will help you

Handling Unicode Front To Back In A Web App

this is about the encoding character encoding

Share:
16,164
Oscar Jara
Author by

Oscar Jara

Updated on June 07, 2022

Comments

  • Oscar Jara
    Oscar Jara almost 2 years

    I am trying to do a simple insert with Spanish characters without success. This is my simple MySQL table structure:

    CREATE TABLE student (
      id INTEGER NOT NULL AUTO_INCREMENT,
      name VARCHAR(100) NOT NULL,
      lastname VARCHAR(100) NOT NULL,
      CONSTRAINT PK_STUDENT PRIMARY KEY (id)
    ) CHARACTER SET utf8 COLLATE utf8_general_ci;
    

    The name and lastname fields will be from Spanish people, their first and last names are like this:

    • Daniel Velásquez

    • Javier Ñañez

    • Víctor Sánchez

    But when I do the following:

    mysql> INSERT INTO student (name, lastname) VALUES ('Víctor', 'Sanchez');
    

    I get this error:

    ERROR 1366 (HY000): Incorrect string value: '\xA1ctor' for column 'name' at row
    1
    

    Well, I am really confused about collations, encondings and everything related when doing a search on internet.

    So, what is the correct way to deal with this? Just to know I am using PHP and I know that a way to retrieve some special characters is using htmlentities($value);

    Thanks in advance.