Тук няма да показвам най-често срещаните заявки като INSERT, UPDATE, DELETE и т.н. Ще ви покажа някои други заявки, които смятам, че са ни необходими по време на разработката. Обикновено създаваме обща функция и класове наведнъж и използваме тези функции и класове много пъти според нуждите. Но в някои случаи трябва да стартирате mysql заявки принудително в базата данни, така че това са някои mysql заявки, които се изискват често.
1. Заявка за вмъкване и актуализиране
Тази заявка е много полезна за предотвратяване на дублиране на въвеждане.
Ако посочите ON DUPLICATE KEY UPDATE и се вмъкне ред, който би причинил дублирана стойност в УНИКАЛЕН индекс или ПЪРВИЧЕН КЛЮЧ, MySQL извършва АКТУАЛИЗИРАНЕ на стария ред . Например, ако колона a е декларирана като UNIQUE и съдържа стойността 1, следните две изрази имат подобен ефект:
INSERT INTO table (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c=c+1; UPDATE table SET c=c+1 WHERE a=1; |
INSERT INTO employee (id,name,lastname,dept) values('key that already exists', 'new name','new last name','Accounts') on duplicate KEY UPDATE name='default name', lastname='default last name'; |
2. Създаване и премахване на ограничения
Често пъти трябва да добавяте/редактирате/изтривате ограничения, приложени към таблица. Можете да направите това, като използвате следните заявки:
Добавяне на първичен ключ:
ALTER TABLE 'TABLE_NAME' DROP PRIMARY KEY, ADD PRIMARY KEY ('COLUMN_NAME'); |
Изхвърлете първичен ключ:
ALTER TABLE 'TABLE_NAME' DROP PRIMARY KEY; |
Пуснете уникален ключ:
ALTER TABLE companies DROP INDEX COLUMN_NAME; |
3. Подреждане по, с клаузи
Подреждане по се използва за подреждане на данни по конкретна колона и след това разполагането се използва за филтриране на този набор от резултати. Те са наистина полезни, когато имате нужда от конкретна информация от голяма база данни.
SELECT * FROM TABLE_NAME group_by DEPARTMENT HAVING salary > 25000; |
4. Промяна и актуализиране на колони на таблица
Ние често променяме свойството на колоната на таблицата, така че с помощта на тези заявки можете лесно да добавяте/редактирате/изтривате съществуващо свойство на колоната на таблицата.
Добавяне на колона
ALTER TABLE 'employee' ADD COLUMN department VARCHAR(100); |
Редактиране на колона
ALTER TABLE 'employee' MODIFY COLUMN department VARCHAR(50); |
Преименувайте колона
ALTER TABLE 'employee' CHANGE department dept VARCHAR(50); |
Пуснете колона
ALTER TABLE 'employee' DROP COLUMN department; |
5. Създаване на Dump/backup на вашата база данни
Можете да зададете по-долу заявка на cronjob, за да архивирате автоматично вашата база данни. просто използвайте полезна заявка по-долу и тя ще вземе резервно копие на вашата mysql база данни с редовни бази.
mysqldump –h localhost –u username –ppassword databasename > backup_file_datatime.SQL |