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 આદેશનો ઉપયોગ કરીને અનુક્રમણિકાઓ ઉમેરો અને દૂર કરો

ડેટા કોષ્ટકમાં ઇન્ડેક્સ ઉમેરવાની ચાર રીતો છે:

  • કોષ્ટક બદલો tbl_name પ્રાથમિક કી ઉમેરો (કૉલમ_સૂચિ): આ નિવેદન પ્રાથમિક કી ઉમેરે છે, જેનો અર્થ છે કે અનુક્રમણિકા મૂલ્યો અનન્ય હોવા જોઈએ અને NULL ન હોઈ શકે.
  • કોષ્ટક બદલો tbl_name ADD UNIQUE index_name (column_list): આ નિવેદન દ્વારા બનાવેલ અનુક્રમણિકાનું મૂલ્ય અનન્ય હોવું જોઈએ (NULL સિવાય, NULL ઘણી વખત દેખાઈ શકે છે).
  • કોષ્ટક બદલો tbl_name ઉમેરો INDEX index_name (column_list): સામાન્ય અનુક્રમણિકા ઉમેરો, અનુક્રમણિકા મૂલ્ય ઘણી વખત દેખાઈ શકે છે.
  • કોષ્ટક બદલો tbl_name ઉમેરો 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
........

હોપ ચેન વેઇલિયાંગ બ્લોગ ( https://www.chenweiliang.com/ ) "MySQL ડેટાબેઝ ઇન્ડેક્સ પ્રકાર/બનાવો/MySQL માં સંયોજન ALTER સ્ટેટમેન્ટ ઉપયોગનો ઉપયોગ કરો" શેર કર્યો, જે તમને મદદરૂપ છે.

આ લેખની લિંક શેર કરવા માટે આપનું સ્વાગત છે:https://www.chenweiliang.com/cwl-496.html

નવીનતમ અપડેટ્સ મેળવવા માટે ચેન વેઇલિઆંગના બ્લોગની ટેલિગ્રામ ચેનલ પર આપનું સ્વાગત છે!

🔔 ચૅનલની ટોચની ડિરેક્ટરીમાં મૂલ્યવાન "ChatGPT કન્ટેન્ટ માર્કેટિંગ AI ટૂલ વપરાશ માર્ગદર્શિકા" મેળવનારા પ્રથમ બનો! 🌟
📚 આ માર્ગદર્શિકામાં ઘણું મૂલ્ય છે, 🌟આ એક દુર્લભ તક છે, તેને ચૂકશો નહીં! ⏰⌛💨
ગમે તો શેર કરો અને લાઈક કરો!
તમારી શેરિંગ અને લાઈક્સ એ અમારી સતત પ્રેરણા છે!

 

评论 评论

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. જરૂરી ક્ષેત્રો વપરાય છે * લેબલ

ટોચ પર સ્ક્રોલ કરો