SQL е изключително популярен език за работа с релационни бази данни и е трудно е да си представим съвременен програмист или разработчик на сайтове и уеб приложения, който да не го знае.
SQL е приет като международен стандарт, затова може да бъдете сигурни, че неговото усвояване ще ви позволи да работите с всяка една релационна база данни – от най-простата SQLite до чудовищната Oracle.
Материалът в книгата е построен на принципа „от най-простото към най-сложното“. След като се запознаете със същността, предназначението и структурата на релационните бази данни и езика SQL, последователно ще усвоите: правилата за писане и въвеждане на заявки; начините за селектиране на данни от таблици; работата с псевдоними, вложени и свързани заявки, оператори, изрази, изгледи, агрегатни функции, релационни, булеви и специални оператори.
Ще научите и как се създават, модифицират и изтриват таблици, как се въвеждат, изтриват и променят полетата на данните, както и как се форматират и подреждат резултатите от изпълнението на заявките.
Специално внимание е отделено на работата с няколко таблици с една заявка, задаването на правата за достъп до данните и на използването на база данни при програмиране на PHP. Разгледан е и езикът PL/SQL, разработен за Oracle Database.
Авторът е положил максимални усилия да направи съдържанието достатъчно просто и нагледно.
19.95лв.
SQL
практическо програмиране
Година | 2018 |
---|---|
Корици | Меки |
Страници | 234 |
Формат | 159х235 |
Преводач | Влади Владев |
Съдържание
Въведение…7
Аудитория или за кого е предназначена тази книга?…8
Глава 1. Релационни бази данни…10
1.1. Въведение в релационните бази данни…10
1.2. Връзка между таблиците…11
1.2.1. Таблица на купувачите…11
1.2.2. Таблица на поръчките…12
1.2.3. Подробности за поръчката…13
1.3. Кратка терминология за базите данни…14
1.4. Създаване и изтриване на база данни…15
Глава 2. Въведение в езика SQL…18
2.1. Как работи SQL?…18
2.2. Стандартът ANSI…19
2.3. DDL, DML, DCL и какво означава всичко това…19
2.4. Типове данни…20
2.5. Потребители на базата данни…24
2.6. Уговорка за писането на заявките…25
2.7. Къде да въвеждаме заявките?…26
2.8. Подготовка за по-нататъшната работа с книгата…29
Глава 3. Селектиране на данни от таблица…32
3.1. Добавяме данни в нашата база данни…32
3.2. Операторът SELECT…33
3.3. Съкратена форма на SELECT…34
3.4. Задаваме условие в WHERE…36
3.5. Подреждане на резултатите…37
3.6. Премахваме дублиращите се редове…38
3.7. Ограничаване на резултатите…38
3.8. Селектиране на случайни записи …39
3.9. Агрегатни функции…40
3.10. Пример за сложна селекция…41
Глава 4. Релационни и булеви оператори. Създаване на сложни условия…43
4.1. Релационни оператори…43
4.2. Булеви оператори…44
Глава 5. Специални оператори…48
5.1. Операторът IN…48
5.2. Операторът BETWEEN…50
5.3. Операторът LIKE…51
5.4. Операторът IS NULL и работа с NULL стойности…53
5.5. Операторът NOT и специалните оператори…53
Глава 6. Агрегатни функции…55
6.1. За какво са необходими агрегатни функции?…55
6.2. Използване на агрегатни функции…56
6.3. Специални атрибути на функция COUNT…58
6.4. Скаларни изрази в агрегати…61
6.5. Клаузата GROUP BY…61
6.6. Изразът HAVING…62
6.7. Вложени агрегати…64
Глава 7. Въвеждане, изтриване и промяна на полетата на данните…65
7.1. Операторът INSERT…65
7.1.1. Общ синтаксис и най-простата форма на оператора INSERT…65
7.1.2. NULL стойности…67
7.1.3. Произволен ред на следване на полетата…67
7.1.4. Въвеждане на данни от една таблица в друга…68
7.2. Операторът DELETE: изтриване на данни от таблицата…71
7.3. Оператор UPDATE: промяна на запис…72
Глава 8. Форматиране и подреждане на резултатите от заявките…75
8.1. Низове и изрази…75
8.2. Подреждаме изходните полета…78
8.3. Подреждане на съставни групи…79
8.4. Подреждане по номера на колоната…80
8.5. Подреждане по NULL стойности…80
Глава 9. Няколко таблици в една заявка…81
9.1. Пълни имена на колоните…81
9.2. Извеждаме имената на клиентите в таблицата на поръчките…82
Глава 10. Съединения при работа с една таблица. Псевдоними…85
10.1. Псевдоними на таблици…85
10.2. Практическо използване на псевдонимите…86
10.3. Допълнителна информация за използването на псевдоними…89
Глава 11. Вложени и свързани заявки…91
11.1. Въведение в подзаявките. Селектиране на всички поръчки по името на клиента…91
11.2. Използване на IN. Получаване на всички поръчки на клиентите от определен град…93
11.3. DICTINCT и подзаявки…95
11.4. Агрегатни функции в подзаявки…96
11.5. HAVING в подзаявки…97
11.6. Свързани подзаявки…98
11.7. Свързване на таблица с нейно копие…99
11.8. Свързани заявки и HAVING…100
Глава 12. Операторът EXISTS…101
12.1. Принцип на работа на оператора…101
12.2. Свързани подзаявки и операторът EXISTS…103
12.3. Изразът NOT EXISTS…105
12.4. EXISTS и агрегатни функции…105
Глава 13. Операторите ANY, ALL и SOME…107
13.1. Операторите ANY и SOME…107
13.2. Използване на IN вместо ANY…108
13.3. Операторите ANY и EXISTS…109
13.4. Операторът ALL…110
Глава 14. Изразът UNION…112
14.1. Обединяване на множество заявки в една…112
14.2. Условия за създаване на обединение…113
Глава 15. Подзаявки с INSERT, DELETE и UPDATE…115
15.1. Подзаявки в INSERT…115
15.2. Подзаявки и операторът DELETE…117
15.3. Подзаявки и операторът UPDATE…119
15.4. Ограничения на подзаявките…119
Глава 16. Създаване, модифициране и изтриване на таблица…121
16.1. Създаване на таблица…121
16.2. Създаване на индекси…122
16.3. Модифициране на съществуваща таблица. Добавяне на полето odate в таблица orders…124
16.4. Изтриване на таблица…126
Глава 17. Ограничения на допустимите стойности на данните…127
17.1. Какво са ограниченията?…127
17.2. Ограничения за NULL стойности…128
17.3. Ограничения за уникалност на данните…129
17.3.1. Уникалност и индекси…129
17.3.2. Уникалност за колони…130
17.3.3. Уникалност за таблица…131
17.4. Ограничения на първичния ключ…131
17.5. Проверка на стойността на полето…132
17.6. Стойности по подразбиране…135
Глава 18. Цялостност на данните …137
18.1. Понятията за външни и родителски ключове…137
18.2. Създаване на външни ключове…139
18.3. Действия на ограниченията…142
18.4. Отнасяме се към едни и същи таблици…145
Глава 19. Въведение в изгледите…147
19.1. Командата CREATE VIEW…147
19.2. Обновяване на изглед…148
19.3. Команда UPDATE за изгледи…149
19.4. Групови изгледи…150
19.5. Изгледи и сложни заявки…150
19.6. Ограничения за изгледите…152
Глава 20. Промяна на стойности с помощта на изгледи…154
20.1. Обновяеми изгледи…154
20.2. Проверка на изгледите…156
20.3. Изключвани полета…157
Глава 21. Въведение в езика PL/SQL…160
21.1. За какво ни е нужен PL/SQL?…160
21.2. Предимства и недостатъци на съхраняваните програми…161
21.3. Първа програма на PL/SQL…163
21.4. Типове данни в PL/SQL…164
21.5. Структура на програмата на PL/SQL…165
21.5.1. Структура на блока…165
21.5.2. Видове блокове…166
21.5.3. Коментари…167
21.6. Променливи и константи в PL/SQL…167
21.7. Условни команди…168
21.7.1. Командата IF…168
21.7.2. Команда CASE…169
21.8. Цикли…173
21.8.1. Прост цикъл…173
21.8.2. Цикъл WHILE с предусловие…174
21.8.3. Цикъл с брояч FOR…175
21.9. SQL в съхранявани програми…176
Глава 22. Определяне на права за достъп до данните…180
22.1. Потребители…180
22.2. Привилегии на потребителя …185
22.3. Командата GRANT…185
22.4. Клаузата WITH GRANT OPTION…187
22.5. Лишаване от привилегии. Командата REVOKE…188
22.6. Привилегиите CONNECT, RESOURCE и DBA…188
22.7. Възстановяване на паролата на потребител root в СУБД MySQL…189
Вместо заключение…191
Приложение 1. Инсталиране на СУБД MySQL в Windows…192
1. Поддържани платформи…192
2. Изтегляне на MySQL…192
3. Инсталиране на MySQL…194
4. Създаване на база данни…202
5. Изпълнение на заявки към базата данни…205
Приложение 2. Инсталиране на СУБД MySQL в Linux…208
1. Инсталиране на клиент и сървър…208
2. Настройка на сървъра на базата данни MySQL…210
2.1. Разрешаване свързването
към сървъра …210
2.2. Управление на сървъра…210
2.3. Сценарият mysql_secure_installation…211
2.4. Създаване на база данни и добавяне на потребител…211
2.5. Свързване от името на потребител…213
Приложение 3. Разширението PDO за работа с бази данни в PHP 7…215
1. Връзка с базата данни…215
2. Изпълнение на заявки и четене на резултата…217
3. Получаване на данни…220
4. Особености при използването на операторите LIKE, LIMIT и IN…222
5. Имена на таблици и полета при работа с PDO…223
6. Заявки за въвеждане и обновяване…223
Приложение 4. phpMyAdmin…226
Приложение 5. Окончателен вариант на базата данни…232