ብዙ የመስክ ቦታዎችን ለመጨመር MySQL ይጨመር? የአምድ መግለጫ አጠቃቀምን በተመለከተ ዝርዝር ማብራሪያ

MySQL በርካታ የመስክ ቦታዎችን ለመጨመር መጨመርን ይቀይሩ? የአምድ መግለጫ አጠቃቀምን በተመለከተ ዝርዝር ማብራሪያ

MySQL ALTER ትእዛዝ

የዳታ ሰንጠረዡን ስም መቀየር ወይም የዳታ ሠንጠረዥ መስኮቹን ማሻሻል ስንፈልግ የ MySQL ALTER ትዕዛዝን መጠቀም አለብን።

ይህን አጋዥ ስልጠና ከመጀመራችን በፊት፡ testalter_tbl የሚል ሠንጠረዥ እንፍጠር።

root@host# mysql -u root -p password;
Enter password:*******
mysql> use chenweiliang;
Database changed
mysql> create table testalter_tbl
    -> (
    -> i INT,
    -> c CHAR(1)
    -> );
Query OK, 0 rows affected (0.05 sec)
mysql> SHOW COLUMNS FROM testalter_tbl;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| i     | int(11) | YES  |     | NULL    |       |
| c     | char(1) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

የሰንጠረዥ መስኮችን ይሰርዙ፣ ያክሉ ወይም ይቀይሩ

የሚከተለው ትእዛዝ የALTER ትዕዛዙን ከ DROP አንቀጽ ጋር በመጠቀም የሠንጠረዡን i አምድ ለመጣል ይጠቀማል።

mysql> ALTER TABLE testalter_tbl  DROP i;

በመረጃ ሠንጠረዥ ውስጥ አንድ መስክ ብቻ ከቀረው DROP መስክን ለመሰረዝ መጠቀም አይቻልም።

ዓምዶችን ወደ ዳታ ሠንጠረዡ ለመጨመር በ MySQL ውስጥ የ ADD አንቀጽ ጥቅም ላይ ይውላል። የሚከተለው ምሳሌ የ i መስክን ወደ ሠንጠረዡ testalter_tbl ያክላል እና የውሂብ አይነት ይገልፃል፡

mysql> ALTER TABLE testalter_tbl ADD i INT;

ከላይ ያለውን ትዕዛዝ ከፈጸሙ በኋላ የ i መስክ በራስ-ሰር ወደ የውሂብ ሰንጠረዥ መስኮቹ መጨረሻ ይታከላል.

mysql> SHOW COLUMNS FROM testalter_tbl;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| c     | char(1) | YES  |     | NULL    |       |
| i     | int(11) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

የአዲሱን መስክ ቦታ መግለጽ ከፈለጉ በ MySQL (ቅንብር) የቀረበውን ቁልፍ ቃል መጠቀም ይችላሉ FIRSTአቀማመጥየመጀመሪያው ዓምድ)፣ ከፊል ስም በኋላ (ከመስክ በኋላ የተቀመጠ)።

የሚከተለውን የALTER TABLE መግለጫ ይሞክሩ፣ እና ከተሳካ አፈጻጸም በኋላ፣ በሰንጠረዡ መዋቅር ላይ ያሉትን ለውጦች ለማየት SHOW COLUMNSን ይጠቀሙ፡

ALTER TABLE testalter_tbl DROP i;
ALTER TABLE testalter_tbl ADD i INT FIRST;
ALTER TABLE testalter_tbl DROP i;
ALTER TABLE testalter_tbl ADD i INT AFTER c;

FIRST እና AFTER ቁልፍ ቃላቶች በ ADD አንቀጽ ውስጥ ብቻ ጥቅም ላይ ይውላሉ, ስለዚህ የውሂብ ሰንጠረዥን ቦታ እንደገና ለማስጀመር ከፈለጉ, መስኩን ለማጥፋት DROP ን መጠቀም እና መስኩን ለመጨመር እና ቦታውን ለማዘጋጀት ADD ን መጠቀም ያስፈልግዎታል.


የመስክ አይነት እና ስም ቀይር

የመስክ አይነት እና ስም መቀየር ከፈለጉ በALTER ትእዛዝ ውስጥ MODIFY ወይም CHANGE ን መጠቀም ይችላሉ።

ለምሳሌ፣ የመስክ አይነት cን ከCHAR(1) ወደ CHAR(10) ለመቀየር የሚከተለውን ትዕዛዝ ያስፈጽሙ፡

mysql> ALTER TABLE testalter_tbl MODIFY c CHAR(10);

ከለውጥ አንቀጽ ጋር፣ አገባቡ በጣም የተለየ ነው።ወዲያውኑ ከ CHANGE ቁልፍ ቃሉ በኋላ መቀየር የሚፈልጉት የመስክ ስም ነው፣ እና አዲሱን የመስክ ስም እና አይነት ይጥቀሱ።የሚከተለውን ምሳሌ ይሞክሩ።

mysql> ALTER TABLE testalter_tbl CHANGE i j BIGINT;

mysql> ALTER TABLE testalter_tbl CHANGE j j INT;

የALTER TABLE ውጤት ባዶ እና ነባሪ እሴቶች

አንድ መስክ ሲቀይሩ፣ ማካተት ብቻ ወይም ነባሪ እሴት ማዋቀር እንደሆነ መግለጽ ይችላሉ።

የሚከተለው ምሳሌ መስክ j ባዶ አይደለም እና ነባሪው እሴቱ 100 መሆኑን ይገልጻል።

mysql> ALTER TABLE testalter_tbl 
    -> MODIFY j BIGINT NOT NULL DEFAULT 100;

ነባሪ እሴት ካላዘጋጁ MySQL በነባሪነት መስኩን በራስ-ሰር ወደ NULL ያዘጋጃል።


የመስክ ነባሪ እሴትን ቀይር

የመስክን ነባሪ እሴት ለመለወጥ ALTER ን መጠቀም ትችላለህ፣ የሚከተሉትን ምሳሌዎች ሞክር።

mysql> ALTER TABLE testalter_tbl ALTER i SET DEFAULT 1000;
mysql> SHOW COLUMNS FROM testalter_tbl;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| c     | char(1) | YES  |     | NULL    |       |
| i     | int(11) | YES  |     | 1000    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)

እንዲሁም የመስክን ነባሪ እሴት ለማስወገድ የALTER ትዕዛዙን ከ DROP አንቀጽ ጋር መጠቀም ይችላሉ፡

mysql> ALTER TABLE testalter_tbl ALTER i DROP DEFAULT;
mysql> SHOW COLUMNS FROM testalter_tbl;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| c     | char(1) | YES  |     | NULL    |       |
| i     | int(11) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
2 rows in set (0.00 sec)
Changing a Table Type:

የዳታ ሰንጠረዡን አይነት ማስተካከል የALTER ትዕዛዝ እና የ TYPE አንቀጽን በመጠቀም ሊከናወን ይችላል።የሠንጠረዡን አይነት testalter_tbl ወደ MYISAM የምንቀይርበትን የሚከተለውን ምሳሌ ይሞክሩ።

ማስታወሻ-የውሂብ ሠንጠረዡን አይነት ለማየት፣ የ SHOW TABLE STATUS መግለጫን መጠቀም ይችላሉ።

mysql> ALTER TABLE testalter_tbl ENGINE = MYISAM;
mysql>  SHOW TABLE STATUS LIKE 'testalter_tbl'\G
*************************** 1. row ****************
           Name: testalter_tbl
           Type: MyISAM
     Row_format: Fixed
           Rows: 0
 Avg_row_length: 0
    Data_length: 0
Max_data_length: 25769803775
   Index_length: 1024
      Data_free: 0
 Auto_increment: NULL
    Create_time: 2007-06-03 08:04:36
    Update_time: 2007-06-03 08:04:36
     Check_time: NULL
 Create_options:
        Comment:
1 row in set (0.00 sec)

የሰንጠረዡን ስም ቀይር

የውሂብ ሠንጠረዡን ስም መቀየር ከፈለጉ፣ ይህንን ለማድረግ በALTER TABLE መግለጫ ውስጥ ያለውን የRENAME አንቀጽ መጠቀም ይችላሉ።

የውሂብ ሠንጠረዡን testalter_tbl ወደ alter_tbl ለመሰየም የሚከተለውን ምሳሌ ይሞክሩ።

mysql> ALTER TABLE testalter_tbl RENAME TO alter_tbl;

የALTER ትእዛዝ በ MySQL ሰንጠረዦች ላይ ኢንዴክሶችን ለመፍጠር እና ለመሰረዝ ጥቅም ላይ ሊውል ይችላል፣ ይህም በሚቀጥሉት ምዕራፎች ውስጥ እንሸፍናለን።

ሌሎች አጠቃቀሞችን ይቀይሩ

የማጠራቀሚያ ሞተሩን ያሻሽሉ፡ ወደ myisam ያስተካክሉት።

alter table tableName engine=myisam;

የውጭ ቁልፍ ገደቦችን አስወግድ፡ ቁልፍ ስም የውጭ ቁልፍ ተለዋጭ ስም ነው።

alter table tableName drop foreign key keyName;

የተሻሻለው መስክ አንጻራዊ ቦታ፡ እዚህ ስም1 ሊቀይሩት የሚፈልጉት መስክ ነው፣ አይነት 1 የመስኩ የመጀመሪያ አይነት ነው፣ እና ከመጀመሪያው እና በኋላ አንዱን መምረጥ ይችላሉ። ከስም2 መስክ በኋላ ተቀምጧል

alter table tableName modify name1 type1 first|after name2;

ተስፋ Chen Weiliang ብሎግ ( https://www.chenweiliang.com/ ) የተጋራ "የብዙ የመስክ ቦታዎችን ለመጨመር MySQL ይለውጣል? የአምድ አሻሽል መግለጫ አጠቃቀም ዝርዝር ማብራሪያ" ለእርስዎ ጠቃሚ ነው።

እንኳን በደህና መጡ የዚህን ጽሁፍ ማገናኛ ለማጋራት፡-https://www.chenweiliang.com/cwl-495.html

አዳዲስ መረጃዎችን ለማግኘት ወደ የቼን ዌይሊያንግ ብሎግ የቴሌግራም ቻናል እንኳን በደህና መጡ።

🔔 ጠቃሚ የሆነውን "ChatGPT Content Marketing AI Tool Usage Guide" በቻናል ከፍተኛ ማውጫ ውስጥ ለማግኘት የመጀመሪያው ይሁኑ! 🌟
📚 ይህ መመሪያ ትልቅ ዋጋ አለው፣ 🌟ይህ ያልተለመደ እድል ነው፣ እንዳያመልጥዎ! ⏰⌛💨
ከወደዳችሁት ሼር እና ላይክ አድርጉ!
የእርስዎ ማጋራት እና መውደዶች ቀጣይ ማበረታቻዎቻችን ናቸው!

 

评论ሺ评论评论评论 ፡፡

የኢሜል አድራሻዎ አይታተምም ፡፡ 项 已 用 ፡፡ * 标注

ወደ ላይ ይሸብልሉ