MySQL දත්ත සමුදා දර්ශක වර්ගය/නිර්මාණය/භාවිත සංයෝජනය ALTER ප්රකාශ භාවිතය MySQL තුළ

MySQLදර්ශක වර්ගය/නිර්මාණය/භාවිත සංයෝජනය වෙනස් කිරීමMySQLවිධාන ප්රකාශය භාවිතය

MySQL දර්ශක

MySQL හි කාර්යක්‍ෂම ක්‍රියාකාරිත්වය සඳහා MySQL දර්ශකය පිහිටුවීම ඉතා වැදගත් වන අතර, MySQL හි ප්‍රතිසාධන වේගය බෙහෙවින් වැඩි දියුණු කිරීමට මෙම දර්ශකයට හැකිය.

උදාහරණයක් ලෙස, නිසි ලෙස නිර්මාණය කර සුචිගත කර ඇති MySQL යනු Lamborghini නම්, සුචිගත මෝස්තරයක් නොමැති MySQL යනු මිනිස් ත්‍රිරෝද රථයකි.

දර්ශකය තනි තීරු දර්ශකය සහ සංයුක්ත දර්ශකය ලෙස බෙදා ඇත.තනි තීරු දර්ශක, එනම්, දර්ශකයක තනි තීරුවක් පමණක් අඩංගු වේ, වගුවකට තනි තීරු දර්ශක කිහිපයක් තිබිය හැක, නමුත් මෙය සංයුක්ත දර්ශකයක් නොවේ.සංයුක්ත දර්ශකය, එනම්, දර්ශකයක් තීරු කිහිපයක් අඩංගු වේ.

දර්ශකයක් නිර්මාණය කිරීමේදී, දර්ශකය SQL විමසුමට අදාළ වන කොන්දේසියක් බවට ඔබ සහතික විය යුතුය (සාමාන්‍යයෙන් WHERE වගන්තියේ කොන්දේසියක් ලෙස).

ඇත්ත වශයෙන්ම, දර්ශකය ද වගුවකි, වගුව ප්‍රාථමික යතුර සහ දර්ශක ක්ෂේත්‍ර සුරකින අතර, ආයතන වගුවේ වාර්තා වෙත යොමු කරයි.

ඉහත සියල්ල දර්ශක භාවිතා කිරීමේ ප්‍රතිලාභ ගැන වේ, නමුත් දර්ශක අධික ලෙස භාවිතා කිරීම අපයෝජනයට තුඩු දෙනු ඇත.එබැවින්, දර්ශකයට එහි අඩුපාඩු ද ඇත: දර්ශකය විමසුම් වේගය බෙහෙවින් වැඩි දියුණු කළද, එය වගුවේ ඇතුළත් කිරීම, යාවත්කාලීන කිරීම සහ මකා දැමීම වැනි වගුව යාවත්කාලීන කිරීමේ වේගය අඩු කරනු ඇත.මොකද ටේබල් එක අප්ඩේට් කරනකොට 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 විධානය භාවිතයෙන් දර්ශක එකතු කිරීම සහ ඉවත් කිරීම

දත්ත වගුවකට දර්ශකයක් එක් කිරීමට ක්රම හතරක් ඇත:

  • වගුව වෙනස් කරන්න tbl_name ප්‍රාථමික යතුර එක් කරන්න (තීරු_ලැයිස්තුව): මෙම ප්‍රකාශය මූලික යතුරක් එක් කරයි, එයින් අදහස් වන්නේ දර්ශක අගයන් අනන්‍ය විය යුතු අතර NULL විය නොහැකි බවයි.
  • ALTER TABLE tbl_name UNIQUE index_name (column_list) එක් කරන්න: මෙම ප්‍රකාශය මගින් නිර්මාණය කරන ලද දර්ශකයේ අගය අද්විතීය විය යුතුය (NULL හැර, NULL කිහිප වතාවක් දිස්විය හැක).
  • වගුව වෙනස් කරන්න tbl_name INDEX දර්ශක_නම එක් කරන්න (තීරු_ලැයිස්තුව): සාමාන්ය දර්ශකයක් එකතු කරන්න, දර්ශක අගය කිහිප වතාවක් දිස්විය හැක.
  • ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list):ප්‍රකාශය සම්පූර්ණ පෙළ සුචිගත කිරීම සඳහා සුචිය FULLTEXT ලෙස සඳහන් කරයි.

පහත උදාහරණය වන්නේ වගුවකට දර්ශකයක් එකතු කිරීමයි.

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
........

Hope Chen Weiliang බ්ලොග් ( https://www.chenweiliang.com/ ) "MySQL Database Index Type/Create/Use Combination ALTER Statement Usage in MySQL" බෙදාගෙන ඇත, එය ඔබට ප්‍රයෝජනවත් වේ.

මෙම ලිපියේ සබැඳිය බෙදා ගැනීමට සාදරයෙන් පිළිගනිමු:https://www.chenweiliang.com/cwl-496.html

නවතම යාවත්කාලීන ලබා ගැනීමට Chen Weiliang ගේ බ්ලොගයේ Telegram නාලිකාව වෙත සාදරයෙන් පිළිගනිමු!

🔔 නාලිකා ඉහළ නාමාවලියෙහි වටිනා "ChatGPT අන්තර්ගත අලෙවිකරණ AI මෙවලම් භාවිත මාර්ගෝපදේශය" ලබා ගත් පළමු පුද්ගලයා වන්න! 🌟
📚 මෙම මාර්ගෝපදේශයෙහි විශාල වටිනාකමක් ඇත, 🌟මෙය දුර්ලභ අවස්ථාවක්, එය අතපසු නොකරන්න! ⏰⌛💨
ඔබ කැමති නම් Share කර Like කරන්න!
ඔබගේ බෙදාගැනීම් සහ කැමැත්ත අපගේ අඛණ්ඩ අභිප්‍රේරණයයි!

 

发表

ඔබගේ විද්‍යුත් තැපැල් ලිපිනය ප්‍රකාශයට පත් නොකෙරේ. අවශ්‍ය ක්ෂේත්‍ර භාවිතා වේ * ලේබලය

ඉහළට අනුචලනය කරන්න