how do I insert unicode characters into mysql with an insert statement?

前端 未结 3 1123
挽巷
挽巷 2020-12-18 01:14

I\'m doing this directly in the mysql client. I want to do the following:

INSERT INTO MYTABLE VALUES(1,12,\'\\u5c40\\u5c42\');

So it would

相关标签:
3条回答
  • 2020-12-18 01:30

    What's the type of your table data? char or varchar? Your issue isn't quite clear, are you getting an error from that line? You might be experiencing: http://dev.hubspot.com/bid/7049/MySQL-and-Unicode-Three-Gotchas.

    EDIT:

    Quite a bit of information is within these three pages that should be able to help: http://dev.mysql.com/doc/refman/5.5/en/charset-unicode.html

    http://dev.mysql.com/doc/refman/5.5/en/string-syntax.html

    http://dev.mysql.com/doc/refman/5.5/en/charset-literal.html

    but I also saw this :

    INSERT INTO mytable VALUES (1, 12, _ucs2'\x5C40\x5C42');
    
    0 讨论(0)
  • 2020-12-18 01:34

    Using the mysql console, I can just paste your unicode characters into an insert command and mysql accepts it. Here's a little test I did using your data:

    CREATE TABLE xx (col1 varchar(20));
    insert into xx values ('局层');
    select * from xx;
    +---------+
    | col1    |
    +---------+
    | 局层   |
    +---------+
    

    My db uses default encoding (latin1).

    Have you tried just pasting them in? What error, if any, do you get?

    0 讨论(0)
  • 2020-12-18 01:39

    It will depend on what you are programming with or if just dealing with the database directly. Are you just trying to do a straight insert from querybrowser or some other tool or are you doing this via a web app. IF the second, what language is the webapp using. If it is a .net app you can try setting the character set in the connection string i.e. charset=utf8

    If you are doing something with php then take a look at this link http://randomchaos.com/documents/?source=php_and_unicode

    You could also go and set the default character set on the database to UTF-8. Not sure how this will impact the current data so be sure to backup everything before making changes to the database.

    0 讨论(0)
提交回复
热议问题