Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में चीनी वर्ण सम्मिलित नहीं कर सकता

UTF-8 का उपयोग करें जब आप टेबल बनाते हैं।

create table table_name () CHARACTER SET = utf8;

UTF-8 का उपयोग करें जब आप तालिका में सम्मिलित करते हैं

set username utf8; INSERT INTO table_name (ABC,VAL);

और पढ़ें

और अधिक

विस्तृत कोड

नीचे दिए गए कोड का परीक्षण किया गया कोड है, कृपया इसके निम्नलिखित कार्य करें।

यदि आपने पहले ही डेटाबेस बना लिया है तो कृपया इसे नीचे दिए गए कोड के रूप में बदलें। और यदि आपने डेटाबेस नहीं बनाया है तो इसे बनाएं और Collation को utf8_unicode_ci

पर सेट करें।

और तालिका के लिए समान तालिका फ़ील्ड के लिए Collation को "utf8_unicode_ci" के रूप में परिभाषित करें जिसमें आप chines chars संग्रहीत करना चाहते हैं।

ALTER DATABASE `stackoverflow` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

CREATE TABLE `stackoverflow`.`chines`
(
    `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    `words` VARCHAR( 200 ) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL
) ENGINE = InnoDB;
<?php

    define('HOSTNAME', 'localhost');
    define('USERNAME', 'root');
    define('PASSWORD', '');
    define('DATABASE', 'stackoverflow');

    $dbLink = mysql_connect(HOSTNAME, USERNAME, PASSWORD)or die(mysql_error());
    mysql_query("SET character_set_results=utf8", $dbLink)or die(mysql_error());
    mb_language('uni'); 
    mb_internal_encoding('UTF-8');
    mysql_select_db(DATABASE, $dbLink)or die(mysql_error());
    mysql_query("set names 'utf8'",$dbLink)or die(mysql_error());

    if(isset($_POST['addWord']))
    {
        mysql_query("SET character_set_client=utf8", $dbLink)or die(mysql_error());
        mysql_query("SET character_set_connection=utf8", $dbLink)or die(mysql_error());

        $sql_query = "INSERT INTO chines(words) VALUES('".$_POST['words']."')";
        mysql_query($sql_query, $dbLink)or die(mysql_error());
    }

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
    <title></title>
</head>
<body>
    <?php
        mysql_query("SET character_set_results=utf8", $dbLink);
        $sql_query = "SELECT * FROM chines";
        $dbResult = mysql_query( $sql_query, $dbLink)or die(mysql_error());

    ?>

    <form action="" method="post">

        <p>Word : <input type="text" name="words" /></p>
        <p><input type="submit" name="addWord" /></p>

    </form>
    <?php
        while($row = mysql_fetch_assoc($dbResult))
        {
            echo $row['words']. '<br />';
        }
    ?>
</body>
</html>

परिणाम और चरण दृश्य नीचे के रूप में देखें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं MySQL के लिए JDBC ड्राइवर लोड नहीं कर सकता

  2. मैं एक MySQL परिणाम सेट के माध्यम से कैसे पुनरावृति कर सकता हूं?

  3. क्या दशमलव मान को MySQL में varchar के रूप में स्टोर करना अच्छा है?

  4. एक टेबल कॉलम से मूल्य कैसे प्राप्त करें जब एक ही नाम के दो कॉलम एक एसक्यूएल में शामिल हों

  5. आप SQL क्वेरी में PHP स्थिरांक कैसे सम्मिलित करते हैं?