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

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

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

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> RENAME <НовоС имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>;

β€’ Π£ΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡ΠΈΡ‚ΡŒ строки Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΏΠΎ значСниям ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… столбцов Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

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

ORDER BY <Имя столбца 1> [ASC ΠΈΠ»ΠΈ DESC],

[<Имя столбца 2> [ASC ΠΈΠ»ΠΈ DESC],…];

УпорядочСниС строк позволяСт ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ сортировки ΠΏΠΎ значСниям ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… столбцов. Однако порядок строк Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ΡŒΡΡ послС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ добавлСния ΠΈ удалСния строк. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ строки Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сортировки, ΡƒΠΊΠ°Π·Π°Π² ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово ASC (ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ) ΠΈΠ»ΠΈ DESC (ΠΏΠΎ ΡƒΠ±Ρ‹Π²Π°Π½ΠΈΡŽ).

Для Ρ‚Π°Π±Π»ΠΈΡ† с Ρ‚ΠΈΠΏΠΎΠΌ InnoDB, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΅ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΠΈΠ»ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ индСкс, Π½Π΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΠΉ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ (NOT NULL UNIQUE), эта ΠΊΠΎΠΌΠ°Π½Π΄Π° игнорируСтся, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ строки Ρ‚Π°ΠΊΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ† автоматичСски ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ значСниям этого ΠΊΠ»ΡŽΡ‡Π°/индСкса.

β€’ Π—Π°Π΄Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ свойства Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (см. ΠΏΡƒΠ½ΠΊΡ‚ Β«ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ свойства Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹Β») Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> <ΠžΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ свойство Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>;

НапримСр, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹> ENGINE <Новый Ρ‚ΠΈΠΏ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>;

β€’ Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ сравнСния ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для Π½ΠΎΠ²Ρ‹Ρ… ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… столбцов Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΠ°ΠΊ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ свойство Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

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

CHARACTER SET <Имя ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ>

[COLLATE <Имя ΠΏΡ€Π°Π²ΠΈΠ»Π° сравнСния>];

НапримСр, Ссли для Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Products (Π’ΠΎΠ²Π°Ρ€Ρ‹) трСбуСтся ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π² качСствС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ CP-1251, это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Products CHARACTER SET cp1251;

ПослС выполнСния этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ столбцы Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Products ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ UTF-8. Если ΠΆΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ALTER TABLE Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒΡΡ Π½ΠΎΠ²Ρ‹Π΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ столбцы, Ρ‚ΠΎ ΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° CP-1251. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для Π½ΠΎΠ²Ρ‹Ρ… столбцов, Π½ΠΎ ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π² Π½ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ столбцы Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

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

CONVERT TO CHARACTER SET <Имя ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ>

[COLLATE <Имя ΠΏΡ€Π°Π²ΠΈΠ»Π° сравнСния>];

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π΅ просто ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ описания ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… столбцов: Π΄Π°Π½Π½Ρ‹Π΅ Π² этих столбцах Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ Π² Π½ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ. НапримСр, послС выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ALTER TABLE Products CONVERT TO CHARACTER SET cp1251;

всС наимСнования ΠΈ описания Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² (значСния столбцов description ΠΈ details) ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ CP-1251. Если ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² столбцС фактичСски Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ, Π° Π² описании столбца ΡƒΠΊΠ°Π·Π°Π½Π° другая ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ°, ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ эту ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² описании столбца, Π±Π΅Π· прСобразования Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π² Ρ‚ΠΈΠΏ столбца ΠΈΠ· символьного Π² Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚ΠΈΠΏ CHAR ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‚ΠΈΠΏ BINARY, Ρ‚ΠΈΠΏ VARCHAR – Π² Ρ‚ΠΈΠΏ VARBINARY, Ρ‚ΠΈΠΏ TEXT – Π² Ρ‚ΠΈΠΏ BLOB ΠΈ Ρ‚. ΠΏ.), Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ, ΡƒΠΆΠ΅ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅. Для этого Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π²Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

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

CHANGE <Имя столбца> <Имя столбца> <Π‘ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…>;

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

CHANGE <Имя столбца> <Имя столбца> <Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…>

CHARACTER SET <ЀактичСская ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ>;

НапримСр, Ссли для столбца details Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Products установлСн Ρ‚ΠΈΠΏ TEXT ΠΈ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° UTF-8, Π° Π΄Π°Π½Π½Ρ‹Π΅ Π² Π½Π΅ΠΌ фактичСски находятся Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ CP-1251, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ описаниС столбца Π² соотвСтствиС с Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄

ALTER TABLE Products CHANGE details details BLOB;

ALTER TABLE Products

CHANGE details details TEXT CHARACTER SET cp1251;

Π˜Ρ‚Π°ΠΊ, Π²Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ измСнСния Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅ рассмотрим Π΅Ρ‰Π΅ нСсколько ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ

Π’ этом ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΌΡ‹ познакомимся с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ получСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ удалСния Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

DESCRIBE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>;

ΠΈΠ»ΠΈ

SHOW CREATE TABLE <Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹>;

Π­Ρ‚ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π° ΠΈ порядок слСдования столбцов Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, внСсСнных Π² структуру Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ALTER TABLE ΠΈ Ρ‚. ΠΏ. Команда DESCRIBE Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ столбцах Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ столбцах Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Customers (ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹), Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

DESCRIBE Customers;

...

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

Π’ΠΎ всСх клиСнтских прилоТСниях, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Ρ… ΠΊ сСрвСру MySQL, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹Π΅. Однако ΠΎΠΊΠ½Π° Ρ€Π°Π·Π½Ρ‹Ρ… клиСнтских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ выглядят ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ (сравним, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, рис. 2.2 ΠΈ рис. 2.4). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ здСсь ΠΈ Π΄Π°Π»Π΅Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠΊΠ½Π°, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сами Π΄Π°Π½Π½Ρ‹Π΅, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния этой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ прСдставлСн Π² Ρ‚Π°Π±Π». 2.1.

Π’Π°Π±Π»ΠΈΡ†Π° 2.1.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ DESCRIBE Customers;

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ столбца Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π° DESCRIBE ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ характСристики:

β€’ Field – имя столбца;

β€’ Type – Ρ‚ΠΈΠΏ столбца;

β€’ Null – ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, допускаСт Π»ΠΈ столбСц Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ значСния (NULL): YES – допускаСт, NO – Π½Π΅ допускаСт;

β€’ Key – ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ столбца Π² ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ индСксы:

– PRI – столбСц Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΠΈΠ»ΠΈ, Ссли Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½Π΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°, Π² ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ индСкс, Π½Π΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΠΉ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ;

– UNI, MUL – столбСц являСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ столбцом индСкса;

β€’ Default – Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ столбца ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ;

β€’ Extra – Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ информация.

Команда SHOW CREATE TABLE Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ всСх ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² Π²ΠΈΠ΄Π΅ тСкста ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ CREATE TABLE, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΡƒΡŽ Π΄Π°Π½Π½ΠΎΠΉ. Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±Ρ‹Π»Π° Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ создана Ρ‚Π°Π±Π»ΠΈΡ†Π°, Ссли, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π°Π±Π»ΠΈΡ†Π° Π±Ρ‹Π»Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ALTER TABLE ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° MySQL автоматичСски внСсла ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ Π² структуру Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для столбца ΠΈΠ»ΠΈ присвоСниС ΠΈΠΌΠ΅Π½ΠΈ индСксу). К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΊΠΎΠΌΠ°Π½Π΄Π°

SHOW CREATE TABLE Customers;

Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, прСдставлСнный Π² Ρ‚Π°Π±Π». 2.2. Π’Π°Π±Π»ΠΈΡ†Π° 2.2. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ SHOW CREATE TABLE Customers;

Если ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ‚Π°Π±Π». 2.2 с «настоящСй» ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ создания Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Customers (см. листинг 2.2), Ρ‚ΠΎ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, ΠΊΠ°ΠΊ измСнились опрСдСлСния столбцов.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ список Ρ‚Π°Π±Π»ΠΈΡ† Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

SHOW TABLES;

Если Π²Ρ‹ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ Π² качСствС Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… SalesDept (ΠžΡ‚Π΄Π΅Π» ΠΏΡ€ΠΎΠ΄Π°ΠΆ) ΠΈ создали Π² Π½Π΅ΠΉ Ρ‚Ρ€ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ – Customers (ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹), Products (Π’ΠΎΠ²Π°Ρ€Ρ‹) ΠΈ Orders (Π—Π°ΠΊΠ°Π·Ρ‹), Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° SHOW TABLES Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ (Ρ‚Π°Π±Π». 2.3). Π’Π°Π±Π»ΠΈΡ†Π° 2.3. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ SHOW TABLES;

НаконСц, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π½Π΅Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΈΠ»ΠΈ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

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

...

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

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ – ΠΎΡ‡Π΅Π½ΡŒ отвСтствСнная опСрация, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½Π° ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ всСх Π΄Π°Π½Π½Ρ‹Ρ…, Ρ…Ρ€Π°Π½ΠΈΠ²ΡˆΠΈΡ…ΡΡ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅. РСкомСндуСтся ΠΏΠ΅Ρ€Π΅Π΄ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π˜Ρ‚Π°ΠΊ, Π²Ρ‹ освоили основныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, выполняСмыС с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ: ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ CREATE TABLE (созданиС), ALTER TABLE (ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅), DROP TABLE (ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅), SHOW TABLES (просмотр списка Ρ‚Π°Π±Π»ΠΈΡ†), DESCRIBE ΠΈ SHOW CREATE TABLE (просмотр ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π΅). Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ строками.

2.4. Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ

ПослС создания Ρ‚Π°Π±Π»ΠΈΡ† ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ наполнСнию ΠΈΡ… Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π’ Π΄Π°Π½Π½ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΎ Π΄Π²ΡƒΡ… опСрациях, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ строки Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ. Π’Π½Π°Ρ‡Π°Π»Π΅ ΠΌΡ‹ рассмотрим Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· тСкстового Ρ„Π°ΠΉΠ»Π°, Π·Π°Ρ‚Π΅ΠΌ – вставку ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… строк.

Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ„Π°ΠΉΠ»Π°

Если трСбуСтся Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ большой массив Π΄Π°Π½Π½Ρ‹Ρ…, ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для этого ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ„Π°ΠΉΠ»Π°. Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈΠ· Ρ„Π°ΠΉΠ»Π° выполняСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ MySQL Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ быстрСС, Ρ‡Π΅ΠΌ вставка строк с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ INSERT.

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Customers (ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹), ΠΊΠΎΠΌΠ°Π½Π΄Π° создания ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π² листингС 2.2, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия.

1. Π—апуститС ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Windows Π‘Π»ΠΎΠΊΠ½ΠΎΡ‚ (ΠŸΡƒΡΠΊ β†’ ВсС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ β†’ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ β†’ Π‘Π»ΠΎΠΊΠ½ΠΎΡ‚).

2. Π’ ΠΎΠΊΠ½Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π‘Π»ΠΎΠΊΠ½ΠΎΡ‚ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ для отдСлСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Tab, Π° для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ строку – ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Enter (рис. 2.5).

Рис. 2.5. Π’Π²ΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Ρ… Π² тСкстовый Ρ„Π°ΠΉΠ»

...

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

ВмСсто ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ значСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° ввСсти символы Β«\NΒ». Π’ΠΎΠ³Π΄Π° Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½ΠΎ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (NULL).