Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«MySQL 5.0. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 13

Автор Π’ΠΈΠΊΡ‚ΠΎΡ€ Π“ΠΎΠ»ΡŒΡ†ΠΌΠ°Π½

Π’ этой ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ добавляСтся столбСц, Π° Ρ‚Π°ΠΊΠΆΠ΅ имя ΠΈ Ρ‚ΠΈΠΏ добавляСмого столбца (ΠΎ Ρ‚ΠΈΠΏΠ°Ρ… столбцов см. ΠΏΡƒΠ½ΠΊΡ‚ Β«Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² MySQLΒ»). ΠŸΡ€ΠΈ нСобходимости ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π΄Π°Ρ‚ΡŒ свойства добавляСмого столбца (см. ΠΏΡƒΠ½ΠΊΡ‚ «Бвойства столбцов»). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ мСсто Π½ΠΎΠ²ΠΎΠ³ΠΎ столбца срСди ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ…: добавляСмый столбСц ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ (FIRST) ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ послС ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ столбца (AFTER). Если мСсто столбца Π½Π΅ Π·Π°Π΄Π°Π½ΠΎ, ΠΎΠ½ становится послСдним столбцом Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Products (Π’ΠΎΠ²Π°Ρ€Ρ‹) столбСц store (Π½Π°Π·Π²Π°Π½ΠΈΠ΅ склада, Π³Π΄Π΅ хранится ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π²ΠΈΠ΄ Ρ‚ΠΎΠ²Π°Ρ€Π°), Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ALTER TABLE Products ADD store VARCHAR(100) AFTER details;

...

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ столбСц со свойством AUTO_INCREMENT ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ созданиСм индСкса ΠΈΠ»ΠΈ ΠΊΠ»ΡŽΡ‡Π° для этого столбца. НапримСр, Ссли Π±Ρ‹ столбСц id Π½Π΅ Π±Ρ‹Π» Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Products (Π’ΠΎΠ²Π°Ρ€Ρ‹) ΠΏΡ€ΠΈ Π΅Π΅ создании, ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Products

ADD id BIGINT AUTO_INCREMENT, ADD PRIMARY KEY (id);

β€’ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

ADD [CONSTRAINT <Имя ΠΊΠ»ΡŽΡ‡Π°>]

PRIMARY KEY (<Бписок столбцов>);

ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡, ΠΈ ΠΈΠΌΠ΅Π½Π° столбцов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ (эти столбцы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅). Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π°Ρ… Π±Ρ‹Π»ΠΎ сказано Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ Β«ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ столбцы ΠΈ индСксы». НапримСр, Ссли Π±Ρ‹ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π½Π΅ Π±Ρ‹Π» ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΏΡ€ΠΈ создании Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Orders (Π—Π°ΠΊΠ°Π·Ρ‹), ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Orders ADD PRIMARY KEY (id);

β€’ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ внСшний ΠΊΠ»ΡŽΡ‡ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

ADD [CONSTRAINT <Имя внСшнСго ΠΊΠ»ΡŽΡ‡Π°>]

FOREIGN KEY [<Имя индСкса>] (<Бписок столбцов>)

REFERENCES <Имя Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

(<Бписок столбцов ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>)

[<ΠŸΡ€Π°Π²ΠΈΠ»Π° поддСрТания цСлостности связи>];

ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ внСшнСго ΠΊΠ»ΡŽΡ‡Π° ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡, ΠΈΠΌΠ΅Π½Π° столбцов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ внСшний ΠΊΠ»ΡŽΡ‡ (эти столбцы Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅), Π° Ρ‚Π°ΠΊΠΆΠ΅ имя Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ данная Ρ‚Π°Π±Π»ΠΈΡ†Π°) ΠΈ ΠΈΠΌΠ΅Π½Π° столбцов, ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π² Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅. Π’ случаС нСобходимости ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π΄Π°Ρ‚ΡŒ имя создаваСмого внСшнСго ΠΊΠ»ΡŽΡ‡Π°, имя индСкса, автоматичСски добавляСмого для столбцов внСшнСго ΠΊΠ»ΡŽΡ‡Π°, ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π° поддСрТания цСлостности связи ΠΏΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ строк Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. НапримСр, Ссли Π±Ρ‹ внСшний ΠΊΠ»ΡŽΡ‡ Π½Π΅ Π±Ρ‹Π» ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΏΡ€ΠΈ создании Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Orders (Π—Π°ΠΊΠ°Π·Ρ‹), ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Orders

ADD FOREIGN KEY (customer_id) REFERENCES Customers (id)

ON DELETE RESTRICT ON UPDATE CASCADE);

Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎ Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΊΠ»ΡŽΡ‡Π°Ρ… Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ Β«ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ столбцы ΠΈ индСксы». β€’ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ индСкс Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> ADD INDEX [<Имя индСкса>] (<Бписок столбцов>);

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ индСкс – с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

ADD [CONSTRAINT <Имя ограничСния>]

UNIQUE (<Бписок столбцов>);

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ полнотСкстовый индСкс – с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> ADD FULLTEXT [<Имя индСкса>] (<Бписок столбцов>);

ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ индСкса ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ индСкс, ΠΈ ΠΈΠΌΠ΅Π½Π° столбцов, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… Π² индСкс. Π’ случаС нСобходимости ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π΄Π°Ρ‚ΡŒ имя индСкса. Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠ± индСксах Π±Ρ‹Π»ΠΎ сказано Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ Β«ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ столбцы ΠΈ индСксы». НапримСр, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ индСкс для столбца store (склад) Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Products (Π’ΠΎΠ²Π°Ρ€Ρ‹) ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Products ADD INDEX (store);

β€’ Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ столбСц Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄: – Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ описаниС столбца, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

CHANGE <ΠŸΡ€Π΅ΠΆΠ½Π΅Π΅ имя столбца >

<НовоС имя столбца>

<Новый Ρ‚ΠΈΠΏ столбца> [<Бвойства столбца>]

[FIRST ΠΈΠ»ΠΈ AFTER <Имя ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ столбца>]; ...

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

Π˜Π·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚ΠΈΠΏ столбца, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΆΠ΅ содСрТит ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ значСния, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ с ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ этом Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ внСсСниС ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠ² Π² значСния. НапримСр, Ссли Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ мСняСтся Π½Π° цСлочислСнный, числовыС значСния Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠΊΡ€ΡƒΠ³Π»Π΅Π½Ρ‹.

Π’ этой ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ имя столбца, Π½ΠΎΠ²ΠΎΠ΅ имя столбца (ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ), Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ столбца (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠΌ), Π° Ρ‚Π°ΠΊΠΆΠ΅, ΠΏΡ€ΠΈ нСобходимости, свойства столбца (старыС свойства ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ CHANGE ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ мСсто столбца срСди ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… столбцов Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹: измСняСмый столбСц ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ (FIRST) ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ послС ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ столбца (AFTER).

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ столбСц store (склад) Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Products (Π’ΠΎΠ²Π°Ρ€Ρ‹) Π² warehouse (склад) ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ‚ΠΈΠΏ Π½Π° CHAR(100), Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ALTER TABLE Products CHANGE store warehouse CHAR(100);

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ столбцу свойство AUTO_INCREMENT, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈΠ±ΠΎ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ с этим, Π»ΠΈΠ±ΠΎ Π·Π°Ρ€Π°Π½Π΅Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ индСкс для этого столбца. – Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ описаниС столбца Π±Π΅Π· пСрСимСнования, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

MODIFY <Имя столбца>

<Новый Ρ‚ΠΈΠΏ столбца> [<Бвойства столбца>]

[FIRST ΠΈΠ»ΠΈ AFTER <Имя ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ столбца>];

Данная ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ возмоТности пСрСимСнования столбца. – Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для столбца, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

ALTER <Имя столбца>

SET DEFAULT <Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ>;

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ для столбца warehouse Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Products Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π‘ΠΊΠ»Π°Π΄ β„– 1, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ALTER TABLE Products ALTER warehouse SET DEFAULT \'Π‘ΠΊΠ»Π°Π΄ β„– 1\

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>

ALTER <Имя столбца> DROP DEFAULT;

НапримСр, ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, установлСнноС для столбца warehouse, ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Products ALTER warehouse DROP DEFAULT;

β€’ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ столбСц Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> DROP <Имя столбца>;

ΠŸΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ столбца ΠΎΠ½ удаляСтся Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ· всСх индСксов, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ Π±Ρ‹Π» Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ (Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΈ внСшнСго ΠΊΠ»ΡŽΡ‡Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ трСбуСтся ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€Π΅ΠΆΠ΄Π΅, Ρ‡Π΅ΠΌ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ входящиС Π² Π½ΠΈΡ… столбцы). Если ΠΏΡ€ΠΈ этом Π² индСксС Π½Π΅ остаСтся столбцов, Ρ‚ΠΎ индСкс Ρ‚Π°ΠΊΠΆΠ΅ автоматичСски удаляСтся. НапримСр, для удалСния столбца warehouse (склад) ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Products (Π’ΠΎΠ²Π°Ρ€Ρ‹) Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

ALTER TABLE Products DROP warehouse;

β€’ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> DROP PRIMARY KEY;

НапримСр, ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Orders (Π—Π°ΠΊΠ°Π·Ρ‹) ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Orders DROP PRIMARY KEY;

β€’ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ внСшний ΠΊΠ»ΡŽΡ‡ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> DROP FOREIGN KEY <Имя внСшнСго ΠΊΠ»ΡŽΡ‡Π°>;

Π’ этой ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ имя внСшнСго ΠΊΠ»ΡŽΡ‡Π°. Если Π²Ρ‹ Π½Π΅ Π·Π°Π΄Π°Π»ΠΈ имя внСшнСго ΠΊΠ»ΡŽΡ‡Π° ΠΏΡ€ΠΈ Π΅Π³ΠΎ создании, Ρ‚ΠΎ имя Π±Ρ‹Π»ΠΎ присвоСно автоматичСски ΠΈ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ SHOW CREATE TABLE (см. ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π» Β«Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈΒ»). НапримСр, ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ внСшний ΠΊΠ»ΡŽΡ‡ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Orders ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Orders DROP FOREIGN KEY orders_ibfk_1;

(здСсь orders_ibfk_1 – имя внСшнСго ΠΊΠ»ΡŽΡ‡Π°, автоматичСски присвоСнноС Π΅ΠΌΡƒ ΠΏΡ€ΠΈ создании). β€’ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ индСкс (ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ»ΠΈ полнотСкстовый) Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> DROP INDEX <Имя индСкса>;

Π’ этой ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ имя индСкса. Если Π²Ρ‹ Π½Π΅ Π·Π°Π΄Π°Π»ΠΈ имя индСкса ΠΏΡ€ΠΈ Π΅Π³ΠΎ создании, Ρ‚ΠΎ имя Π±Ρ‹Π»ΠΎ присвоСно автоматичСски ΠΈ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ SHOW CREATE TABLE (см. ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π» Β«Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈΒ»). НапримСр, ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ индСкс, созданный для поля name (имя) Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Customers (ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹), ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Customers DROP INDEX name;

(здСсь name – имя индСкса: ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ индСксу присваиваСтся имя ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ индСксируСмого столбца). β€’ Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… индСксов Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ с Ρ‚ΠΈΠΏΠΎΠΌ MyISAM Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄:

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> DISABLE KEYS;

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… индСксов, Ρ‡Ρ‚ΠΎ позволяСт ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ быстродСйствиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ добавлСния строк Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ.

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> ENABLE KEYS;

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° позволяСт Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ индСксы послС добавлСния строк. β€’ ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹