MySQL ഡാറ്റാബേസ് സൂചിക തരം/സൃഷ്ടിക്കുക/ഉപയോഗിക്കൽ കോമ്പിനേഷൻ ALTER സ്റ്റേറ്റ്മെന്റ് ഉപയോഗം MySQL-ൽ

MySQLസൂചിക തരം/സൃഷ്‌ടിക്കുക/കോമ്പോ ആൾട്ടർ ഉപയോഗിക്കുകMySQLകമാൻഡ് സ്റ്റേറ്റ്മെന്റ് ഉപയോഗം

MySQL സൂചികകൾ

MySQL-ന്റെ കാര്യക്ഷമമായ പ്രവർത്തനത്തിന് MySQL സൂചിക സ്ഥാപിക്കുന്നത് വളരെ പ്രധാനമാണ്, കൂടാതെ സൂചികയ്ക്ക് MySQL-ന്റെ വീണ്ടെടുക്കൽ വേഗത വളരെയധികം മെച്ചപ്പെടുത്താൻ കഴിയും.

ഉദാഹരണത്തിന്, ന്യായമായ രൂപകൽപ്പനയും സൂചികകളുടെ ഉപയോഗവുമുള്ള MySQL ഒരു ലംബോർഗിനി ആണെങ്കിൽ, സൂചികകളും സൂചികകളും ഇല്ലാത്ത MySQL ഒരു മനുഷ്യ ട്രൈസൈക്കിളാണ്.

സൂചികയെ ഒറ്റ നിര സൂചിക, സംയോജിത സൂചിക എന്നിങ്ങനെ തിരിച്ചിരിക്കുന്നു.സിംഗിൾ കോളം സൂചിക, അതായത്, ഒരു സൂചികയിൽ ഒരൊറ്റ കോളം മാത്രമേ അടങ്ങിയിട്ടുള്ളൂ, ഒരു ടേബിളിന് ഒന്നിലധികം ഒറ്റ കോളം സൂചികകൾ ഉണ്ടാകാം, എന്നാൽ ഇതൊരു സംയോജിത സൂചികയല്ല.സംയോജിത സൂചിക, അതായത്, ഒരു സൂചികയിൽ ഒന്നിലധികം നിരകൾ അടങ്ങിയിരിക്കുന്നു.

ഒരു സൂചിക സൃഷ്ടിക്കുമ്പോൾ, സൂചിക എന്നത് SQL ചോദ്യത്തിന് ബാധകമായ ഒരു വ്യവസ്ഥയാണെന്ന് നിങ്ങൾ ഉറപ്പാക്കേണ്ടതുണ്ട് (സാധാരണയായി WHERE ക്ലോസിന്റെ ഒരു വ്യവസ്ഥയായി).

വാസ്തവത്തിൽ, സൂചികയും ഒരു പട്ടികയാണ്, പട്ടിക പ്രാഥമിക കീയും സൂചിക ഫീൽഡുകളും സംരക്ഷിക്കുകയും എന്റിറ്റി ടേബിളിന്റെ റെക്കോർഡുകളിലേക്ക് പോയിന്റ് ചെയ്യുകയും ചെയ്യുന്നു.

മുകളിൽ പറഞ്ഞവയെല്ലാം സൂചികകൾ ഉപയോഗിക്കുന്നതിന്റെ പ്രയോജനങ്ങളെക്കുറിച്ചാണ്, എന്നാൽ സൂചികകളുടെ അമിതമായ ഉപയോഗം ദുരുപയോഗത്തിന് ഇടയാക്കും.അതിനാൽ, സൂചികയ്ക്ക് അതിന്റെ പോരായ്മകളും ഉണ്ടാകും: ഇൻഡെക്സ് അന്വേഷണ വേഗതയെ വളരെയധികം മെച്ചപ്പെടുത്തുന്നുണ്ടെങ്കിലും, പട്ടികയിൽ INSERT, UPDATE, DELETE എന്നിവ പോലെയുള്ള പട്ടിക അപ്ഡേറ്റ് ചെയ്യുന്ന വേഗത കുറയ്ക്കും.കാരണം, പട്ടിക അപ്ഡേറ്റ് ചെയ്യുമ്പോൾ, MySQL ഡാറ്റ സംരക്ഷിക്കുക മാത്രമല്ല, ഇൻഡെക്സ് ഫയൽ സംരക്ഷിക്കുകയും ചെയ്യുന്നു.

ഡിസ്ക് സ്പേസ് ഉപയോഗിക്കുന്ന ഒരു സൂചിക ഫയൽ സൂചികയിലാക്കുന്നു.


സാധാരണ സൂചിക

സൂചിക സൃഷ്ടിക്കുക

ഇതാണ് ഏറ്റവും അടിസ്ഥാന സൂചിക, ഇതിന് നിയന്ത്രണങ്ങളൊന്നുമില്ല.ഇനിപ്പറയുന്ന രീതികളിൽ ഇത് സൃഷ്ടിക്കാൻ കഴിയും:

CREATE INDEX indexName ON mytable(username(length)); 

CHAR, VARCHAR തരങ്ങൾക്ക്, ഫീൽഡിന്റെ യഥാർത്ഥ നീളത്തേക്കാൾ നീളം കുറവായിരിക്കാം; BLOB, TEXT തരങ്ങൾക്ക്, ദൈർഘ്യം വ്യക്തമാക്കണം.

പട്ടികയുടെ ഘടന പരിഷ്ക്കരിക്കുക (സൂചിക ചേർക്കുക)

ALTER table tableName ADD INDEX indexName(columnName)

പട്ടിക സൃഷ്ടിക്കുമ്പോൾ നേരിട്ട് വ്യക്തമാക്കുക

CREATE TABLE mytable(  
 
ID INT NOT NULL,   
 
username VARCHAR(16) NOT NULL,  
 
INDEX [indexName] (username(length))  
 
);  

ഒരു സൂചിക ഡ്രോപ്പ് ചെയ്യുന്നതിനുള്ള വാക്യഘടന

DROP INDEX [indexName] ON mytable; 

അദ്വിതീയ സൂചിക

ഇത് മുമ്പത്തെ സാധാരണ സൂചികയ്ക്ക് സമാനമാണ്, വ്യത്യാസം ഇതാണ്: സൂചിക നിരയുടെ മൂല്യം അദ്വിതീയമായിരിക്കണം, പക്ഷേ ശൂന്യ മൂല്യങ്ങൾ അനുവദനീയമാണ്.ഒരു സംയോജിത സൂചികയുടെ കാര്യത്തിൽ, കോളം മൂല്യങ്ങളുടെ സംയോജനം അദ്വിതീയമായിരിക്കണം.ഇനിപ്പറയുന്ന രീതികളിൽ ഇത് സൃഷ്ടിക്കാൻ കഴിയും:

സൂചിക സൃഷ്ടിക്കുക

CREATE UNIQUE INDEX indexName ON mytable(username(length)) 

പട്ടികയുടെ ഘടന മാറ്റുക

ALTER table mytable ADD UNIQUE [indexName] (username(length))

പട്ടിക സൃഷ്ടിക്കുമ്പോൾ നേരിട്ട് വ്യക്തമാക്കുക

CREATE TABLE mytable(  
 
ID INT NOT NULL,   
 
username VARCHAR(16) NOT NULL,  
 
UNIQUE [indexName] (username(length))  
 
);  

ALTER കമാൻഡ് ഉപയോഗിച്ച് സൂചികകൾ ചേർക്കുകയും നീക്കം ചെയ്യുകയും ചെയ്യുക

ഒരു ഡാറ്റ പട്ടികയിലേക്ക് ഒരു സൂചിക ചേർക്കുന്നതിന് നാല് വഴികളുണ്ട്:

  • ALTER TABLE tbl_name പ്രാഥമിക കീ ചേർക്കുക (column_list): ഈ പ്രസ്താവന ഒരു പ്രാഥമിക കീ ചേർക്കുന്നു, അതായത് സൂചിക മൂല്യങ്ങൾ അദ്വിതീയമായിരിക്കണം കൂടാതെ NULL ആകാൻ കഴിയില്ല.
  • ALTER TABLE tbl_name UNIQUE index_name ചേർക്കുക (column_list): ഈ പ്രസ്താവന സൃഷ്ടിച്ച സൂചികയുടെ മൂല്യം അദ്വിതീയമായിരിക്കണം (NULL ഒഴികെ, NULL ഒന്നിലധികം തവണ ദൃശ്യമാകാം).
  • ALTER TABLE tbl_name INDEX സൂചിക_നാമം ചേർക്കുക (column_list): ഒരു സാധാരണ സൂചിക ചേർക്കുക, സൂചിക മൂല്യം ഒന്നിലധികം തവണ ദൃശ്യമാകും.
  • ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list):ഫുൾ-ടെക്‌സ്‌റ്റ് ഇൻഡക്‌സിംഗിനുള്ള സൂചികയെ ഫുൾടെക്‌സ്‌റ്റായി പ്രസ്താവന വ്യക്തമാക്കുന്നു.

ഒരു പട്ടികയിലേക്ക് ഒരു സൂചിക ചേർക്കുന്നതാണ് ഇനിപ്പറയുന്ന ഉദാഹരണം.

mysql> ALTER TABLE testalter_tbl ADD INDEX (c);

സൂചികകൾ ഡ്രോപ്പ് ചെയ്യുന്നതിന് നിങ്ങൾക്ക് ALTER കമാൻഡിലെ DROP ക്ലോസും ഉപയോഗിക്കാം.സൂചിക ഡ്രോപ്പ് ചെയ്യുന്നതിന് ഇനിപ്പറയുന്ന ഉദാഹരണം പരീക്ഷിക്കുക:

mysql> ALTER TABLE testalter_tbl DROP INDEX c;

ALTER കമാൻഡ് ഉപയോഗിച്ച് പ്രാഥമിക കീകൾ ചേർക്കുകയും നീക്കം ചെയ്യുകയും ചെയ്യുക

പ്രാഥമിക കീയ്ക്ക് ഒരു നിരയിൽ മാത്രമേ പ്രവർത്തിക്കാൻ കഴിയൂ. ഒരു പ്രാഥമിക കീ സൂചിക ചേർക്കുമ്പോൾ, പ്രാഥമിക കീ സ്ഥിരസ്ഥിതിയായി NULL അല്ല (NOT NULL) എന്ന് നിങ്ങൾ ഉറപ്പാക്കേണ്ടതുണ്ട്.ഉദാഹരണങ്ങൾ ഇപ്രകാരമാണ്:

mysql> ALTER TABLE testalter_tbl MODIFY i INT NOT NULL;
mysql> ALTER TABLE testalter_tbl ADD PRIMARY KEY (i);

ALTER കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഒരു പ്രാഥമിക കീ ഇല്ലാതാക്കാനും കഴിയും:

mysql> ALTER TABLE testalter_tbl DROP PRIMARY KEY;

പ്രൈമറി കീ ഡ്രോപ്പ് ചെയ്യുമ്പോൾ നിങ്ങൾ പ്രൈമറി കീ മാത്രം വ്യക്തമാക്കേണ്ടതുണ്ട്, എന്നാൽ ഒരു സൂചിക ഇടുമ്പോൾ, നിങ്ങൾ സൂചികയുടെ പേര് അറിഞ്ഞിരിക്കണം.


സൂചിക വിവരങ്ങൾ കാണിക്കുക

പട്ടികയിൽ പ്രസക്തമായ സൂചിക വിവരങ്ങൾ ലിസ്റ്റ് ചെയ്യാൻ നിങ്ങൾക്ക് SHOW INDEX കമാൻഡ് ഉപയോഗിക്കാം.\G ചേർത്ത് ഔട്ട്പുട്ട് വിവരങ്ങൾ ഫോർമാറ്റ് ചെയ്യാം.

ഇനിപ്പറയുന്ന ഉദാഹരണങ്ങൾ പരീക്ഷിക്കുക:

mysql> SHOW INDEX FROM table_name; \G
........

ഹോപ്പ് ചെൻ വെയ്‌ലിയാങ് ബ്ലോഗ് ( https://www.chenweiliang.com/ ) പങ്കിട്ട "MySQL ഡാറ്റാബേസ് സൂചിക തരം/സൃഷ്‌ടിക്കുക/MySQL-ൽ കോമ്പിനേഷൻ ALTER സ്റ്റേറ്റ്‌മെന്റ് ഉപയോഗം ഉപയോഗിക്കുക", ഇത് നിങ്ങൾക്ക് സഹായകമാണ്.

ഈ ലേഖനത്തിന്റെ ലിങ്ക് പങ്കിടാൻ സ്വാഗതം:https://www.chenweiliang.com/cwl-496.html

ഏറ്റവും പുതിയ അപ്‌ഡേറ്റുകൾ ലഭിക്കുന്നതിന് ചെൻ വെയ്‌ലിയാങ്ങിന്റെ ബ്ലോഗിന്റെ ടെലിഗ്രാം ചാനലിലേക്ക് സ്വാഗതം!

🔔 ചാനൽ ടോപ്പ് ഡയറക്‌ടറിയിൽ വിലയേറിയ "ChatGPT കണ്ടന്റ് മാർക്കറ്റിംഗ് AI ടൂൾ ഉപയോഗ ഗൈഡ്" നേടുന്ന ആദ്യത്തെയാളാകൂ! 🌟
📚 ഈ ഗൈഡിൽ വലിയ മൂല്യമുണ്ട്, 🌟 ഇതൊരു അപൂർവ അവസരമാണ്, ഇത് നഷ്‌ടപ്പെടുത്തരുത്! ⏰⌛💨
ഇഷ്ടമായാൽ ഷെയർ ചെയ്യുക, ലൈക്ക് ചെയ്യുക!
നിങ്ങളുടെ ഷെയറിംഗും ലൈക്കുകളുമാണ് ഞങ്ങളുടെ തുടർച്ചയായ പ്രചോദനം!

 

发表 评论

നിങ്ങളുടെ ഇമെയിൽ വിലാസം പ്രസിദ്ധീകരിക്കില്ല. ആവശ്യമായ ഫീൽഡുകൾ ഉപയോഗിക്കുന്നു * ലേബൽ

മുകളിലേക്ക് സ്ക്രോൾ ചെയ്യുക