π ΠΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ Π² SQL: ΠΏΡΠΎΡΡΠΎΠΉ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ±
Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ Π² SQL, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ALTER TABLE.
ALTER TABLE table_name
DROP INDEX index_name;
ΠΠ΄Π΅ΡΡ:
- table_name - Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ
- index_name - Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° "users" ΠΈ Π² Π½Π΅ΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ "idx_email" Π½Π° ΡΡΠΎΠ»Π±ΡΠ΅ "email", Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ALTER TABLE users
DROP INDEX idx_email;
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ Π² SQL!
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ SQL?
ΠΠ½Π΄Π΅ΠΊΡΡ Π² SQL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ², Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° SQL Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ². Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ SQL Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠ΄Π°.
1. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ALTER TABLE
ΠΠ»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° SQL Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ALTER TABLE. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ALTER TABLE Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ALTER TABLE table_name
DROP INDEX index_name;
Π³Π΄Π΅:
- table_name - ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ
- index_name - ΠΈΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ
2. ΠΡΠΈΠΌΠ΅ΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° SQL
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ², ΡΡΠΎΠ±Ρ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ SQL.
ΠΡΠΈΠΌΠ΅Ρ 1: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° PRIMARY KEY
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° "users" Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ PRIMARY KEY Π½Π° ΡΡΠΎΠ»Π±ΡΠ΅ "id". Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ALTER TABLE users
DROP PRIMARY KEY;
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ½Π΄Π΅ΠΊΡ PRIMARY KEY Π±ΡΠ΄Π΅Ρ ΡΠ΄Π°Π»Π΅Π½ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ "users".
ΠΡΠΈΠΌΠ΅Ρ 2: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° UNIQUE
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° "employees" Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ UNIQUE Π½Π° ΡΡΠΎΠ»Π±ΡΠ΅ "email". Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΡΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ALTER TABLE employees
DROP INDEX index_name;
ΠΠ΄Π΅ΡΡ "index_name" - ΡΡΠΎ ΠΈΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° UNIQUE, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π°Π»ΠΈΡΡ.
3. ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°
Π§ΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ Π±ΡΠ» ΡΠ΄Π°Π»Π΅Π½, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π·Π°ΠΏΡΠΎΡ SHOW INDEX FROM table_name. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° "email" ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ "employees", Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π·Π°ΠΏΡΠΎΡ:
SHOW INDEX FROM employees;
ΠΡΠ»ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ Π±ΡΠ» ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠ΄Π°Π»Π΅Π½, Π²Ρ Π½Π΅ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π΅Π³ΠΎ Π² Π²ΡΠ²ΠΎΠ΄Π΅ Π·Π°ΠΏΡΠΎΡΠ°.
4. ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° SQL ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ². Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ALTER TABLE Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° SQL ΠΈ ΠΏΡΠΈΠ²Π΅Π»ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠ° SHOW INDEX FROM, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ Π±ΡΠ» ΡΡΠΏΠ΅ΡΠ½ΠΎ ΡΠ΄Π°Π»Π΅Π½.
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠ° ΡΡΠ°ΡΡΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ SQL. Π£ΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ!