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

इमोजी को डेटाबेस में स्टोर नहीं कर सकता

ठीक है मैं अंत में इसे काम करने में कामयाब रहा! हर किसी के लिए धन्यवाद जिन्होंने मेरी मदद करने की कोशिश की, खासकर @ रिक जेम्स और @ जेरार्ड रोश।

सुझाव:

यदि आपको इमोजी के साथ काम करने की आवश्यकता है, तो सबसे पहले लोकलहोस्ट पर सरल परीक्षण करें। एक नया डेटाबेस बनाएं और परीक्षण के उद्देश्य से एक नया ऐप बनाएं।

यदि आप मेरे द्वारा प्रश्न में लिखे गए चरणों का पालन करते हैं या यदि आप इस ट्यूटोरियल का अनुसरण करते हैं: https://mathiasbynens.be/notes/mysql-utf8mb4#utf8-to-utf8mb4 यह काम करना चाहिए।

एक ताज़ा बुनियादी ऐप पर स्थानीय रूप से काम करने से आपके पास अपनी ज़रूरत के सभी परीक्षण करने के लिए अधिक नियंत्रण और अधिक जगह होगी।

समाधान:

मेरे मामले में समस्या कोडइग्निटर में डेटाबेस के विन्यास में थी। यह एक बेवकूफी के लिए char_set और संयोजन को ठीक से स्थापित नहीं कर रहा था:मैं फ़ंक्शन में डेटाबेस सेटिंग्स को ओवरराइड कर रहा था जो संदेशों को यह सुनिश्चित करने के लिए सहेजता है कि यह मोबाइल डेटाबेस के साथ काम कर रहा है।

पहले:

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       
}

बाद:

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

    // other code to save message
}

निष्कर्ष:

ऐप को डेटाबेस से कनेक्शन ठीक से सेट करना होगा। यदि आपके पास डेटाबेस ठीक से सेटअप है लेकिन आप अपने ऐप के साथ उचित कनेक्शन नहीं बनाते हैं, तो यह काम नहीं करेगा।

इसलिए यदि आप इसी तरह की समस्याओं का सामना करते हैं, तो सुनिश्चित करें कि एपीआई char_set . को ठीक से सेटअप करता है utf8mb4 . के रूप में और db_collat utf8mb4_unicode_ci . के रूप में ।



  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 के साथ .NET Core 2.0:निर्दिष्ट कुंजी बहुत लंबी थी; अधिकतम कुंजी लंबाई 3072 बाइट्स है

  2. MySQL में एकाधिक फ़ील्ड सॉर्ट करना

  3. MySQLi के साथ डेटाबेस में सभी तालिकाओं को सूचीबद्ध करें

  4. एकल MySQL क्वेरी में विभिन्न स्थितियों के साथ कई मायने रखता है

  5. संक्षिप्त संख्या के लिए प्रारूप संख्या