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

MySQL FULLTEXT इंडेक्स जारी करता है

आप गलत प्रकार की तालिका का उपयोग कर रहे हैं। मैसकल कुछ अलग प्रकार की तालिकाओं का समर्थन करता है, लेकिन सबसे अधिक इस्तेमाल किया जाने वाला MyISAM और InnoDB हैं। MyISAM (MySQL 5.6+में भी InnoDB टेबल) प्रकार हैं उन तालिकाओं की संख्या जो Mysql पूर्ण-पाठ अनुक्रमणिका के लिए समर्थन करती है।

अपनी तालिका के प्रकार की जाँच करने के लिए निम्नलिखित sql क्वेरी जारी करें:

SHOW TABLE STATUS

क्वेरी द्वारा दिए गए परिणाम को देखते हुए, इंजन कॉलम में अपनी तालिका और संबंधित मान ज्ञात करें। यदि यह मान MyISAM या InnoDB को छोड़कर कुछ भी है तो यदि आप FULLTEXT अनुक्रमणिका जोड़ने का प्रयास कर रहे हैं तो Mysql एक त्रुटि देगा।

इसे ठीक करने के लिए, आप इंजन प्रकार बदलने के लिए नीचे दिए गए sql क्वेरी का उपयोग कर सकते हैं:

ALTER TABLE <table name> ENGINE = [MYISAM | INNODB]

अतिरिक्त जानकारी (सोचा कि यह उपयोगी हो सकता है):विशिष्ट तालिकाओं की आवश्यक कार्यक्षमता के लिए अनुकूलित करने के लिए विभिन्न इंजन भंडारण प्रकारों का उपयोग करते हुए मैसकल। उदाहरण MyISAM ऑपरेटिंग सिस्टम (विंडोज़ के अलावा) के लिए डिफ़ॉल्ट प्रकार है, जल्दी से SELECTs और INSERTs को प्रीफॉर्म करता है; लेकिन लेन-देन नहीं करता है। InnoDB विंडोज़ के लिए डिफ़ॉल्ट है, लेनदेन के लिए इस्तेमाल किया जा सकता है। लेकिन InnoDB को सर्वर पर अधिक डिस्क स्थान की आवश्यकता होती है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. तालिका की संरचना को बदले बिना किसी तालिका में अंतिम n पंक्तियों का चयन करने का सबसे कारगर तरीका क्या है?

  2. क्या MAMP में MySQL को MySQL 5.7 में अपग्रेड करना संभव है?

  3. तैयार बयानों के माध्यम से INSERT INTO के साथ PDO

  4. 'कोड' से पहले तालिका जोड़ें ... बदलें?

  5. जहां ip=inet_pton($ip) का चयन नहीं किया जा सकता