مقالې لارښود
مای د ډیرو ساحوي پوستونو د زیاتولو لپاره اضافه کول بدل کړئ؟ د کالم بیان د تعدیل کارولو مفصل وضاحت
مای د 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)
د میز ساحې ړنګ کړئ، اضافه کړئ یا بدل کړئ
لاندې کمانډ د DROP بند سره د ALTER کمانډ کاروي ترڅو پورته رامینځته شوي جدول i کالم پریږدي:
mysql> ALTER TABLE testalter_tbl DROP i;
تاسو نشئ کولی د یوې ساحې حذف کولو لپاره DROP وکاروئ که چیرې د ډیټا جدول کې یوازې یوه ساحه پاتې وي.
د ADD فقره په MySQL کې د ډیټا جدول ته د کالمونو اضافه کولو لپاره کارول کیږي. لاندې مثال په جدول کې 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)
که تاسو د نوي ساحې موقعیت مشخص کولو ته اړتیا لرئ، تاسو کولی شئ د مای ایس کیو ایل لخوا چمتو شوي FIRST کلیدي کلمه وکاروئ (سیټځای ورکوللومړی کالم)، د ساحې نوم وروسته (د ساحې وروسته ټاکل شوی).
لاندې ALTER TABLE بیان هڅه وکړئ، او د بریالي اجرا کولو وروسته، د میز په جوړښت کې د بدلونونو لیدلو لپاره د کالمونو ښودلو څخه کار واخلئ:
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;
لومړی او وروسته کلیدي کلمې یوازې د ADD بند کې کارول کیږي ، نو که تاسو غواړئ د ډیټا میز ساحې موقعیت له سره تنظیم کړئ ، نو تاسو اړتیا لرئ لومړی د ساحې حذف کولو لپاره DROP وکاروئ او بیا د ساحې اضافه کولو او موقعیت تنظیم کولو لپاره ADD وکاروئ.
د ساحې ډول او نوم بدل کړئ
که تاسو د ساحې ډول او نوم بدلولو ته اړتیا لرئ، تاسو کولی شئ د ALTER کمانډ کې د MODIFY یا CHANGE بند وکاروئ.
د مثال په توګه، د CHAR (1) څخه CHAR (10) ته د فیلډ ډول بدلولو لپاره، لاندې کمانډ اجرا کړئ:
mysql> ALTER TABLE testalter_tbl MODIFY c CHAR(10);
د CHANGE بند سره، نحو خورا توپیر لري.سمدلاسه وروسته د 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)
تاسو کولی شئ د DROP بند سره د ALTER کمانډ هم وکاروئ ترڅو د ساحې ډیفالټ ارزښت لرې کړئ ، لکه په لاندې مثال کې:
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 ته بدلوو:
یادونه:د ډیټا جدول ډول لیدو لپاره ، تاسو کولی شئ د شو جدول حالت بیان وکاروئ.
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 جدولونو کې د شاخصونو رامینځته کولو او حذف کولو لپاره هم کارول کیدی شي ، کوم چې موږ به یې په راتلونکو فصلونو کې پوښو.
نور استعمالونه بدل کړئ
د ذخیره کولو انجن بدل کړئ: دا مایسام ته بدل کړئ
alter table tableName engine=myisam;
بهرنۍ کلیدي خنډ لرې کړئ: د کلیدي نوم یو بهرني کلیدي عرف دی
alter table tableName drop foreign key keyName;
د تعدیل شوي ساحې اړوند موقعیت: دلته نوم 1 هغه ساحه ده چې تاسو یې غواړئ بدل کړئ، ډول 1 د ساحې اصلي ډول دی، او تاسو کولی شئ لومړی او وروسته یو غوره کړئ، کوم چې باید څرګند وي، لومړی لومړی ځای پرځای شوی، او وروسته دی. د name2 ساحې وروسته ځای په ځای شوی
alter table tableName modify name1 type1 first|after name2;
امید چن وییلینګ بلاګ ( https://www.chenweiliang.com/ ) شریک کړل "MySQL د ډیری ساحې پوستونو زیاتولو لپاره اضافه کول؟ د تعدیل کالم بیان د کارونې مفصل وضاحت" ستاسو لپاره ګټور دی.
د دې مقالې لینک شریکولو ته ښه راغلاست:https://www.chenweiliang.com/cwl-495.html
د وروستي تازه معلوماتو ترلاسه کولو لپاره د چن ویلیانګ بلاګ ټیلیګرام چینل ته ښه راغلاست!
📚 دا لارښود لوی ارزښت لري، 🌟دا یو نادر فرصت دی، له لاسه مه ورکوئ! ⏰⌛💨
که مو خوښه شوه لایک او شریک کړئ!
ستاسو شریکول او خوښول زموږ دوامداره هڅونه ده!