Database basics. SQL
Розуміння базової теорії баз даних та навички взаємодії з ними істотно розширюють можливості QA, адже тестування кейсів, пов'язаних з базами даних, може бути необхідним на багатьох проектах. Якщо б бази даних були б погано впорядковані – все б посипалось, як карткові будиночки. Компанії зосереджують свої стратегії на основі даних, щоб вони могли добре розуміти своїх клієнтів. Facebook, Amazon, Netflix і Google — це лише мінімум серед великих корпорацій, бізнес-модель яких полягає в наданні персоналізованих рекомендацій своїм користувачам. А все чому? Все працює тільки завдяки організованим даним
Давай по черзі. Отже:
Що таке БД?
У найпростішому вигляді база даних складається з таблиць, які містять стовпці та рядки. Дані розділені за категоріями в таблиці, щоб уникнути дублювання. Наприклад, компанія може мати таблицю для працівників, одну для клієнтів і іншу для продуктів. Кожен рядок у таблиці називається записом, а кожна клітинка – полем. Кожне поле (або стовпець) містить певний тип даних, наприклад число, текст або дату. Ця специфікація забезпечується низкою правил, які називаються обмеженнями, щоб забезпечити точність і надійність ваших даних. Таблиці в реляційній базі даних пов’язані за допомогою ключа. Це ідентифікатор у кожній таблиці, який унікально ідентифікує рядок. Кожна таблиця використовує стовпець первинного ключа, і будь-яка таблиця, яка потребує зв’язку з цією таблицею, пропонує стовпець зовнішнього ключа, значення якого відповідатиме первинному ключу першої таблиці
Запити та звіти
Усі механізми БД підтримують запити, які є процесом визначення певного набору правил для отримання витягу підмножини інформації з бази даних. Однак різні механізми пропонують різні рівні підтримки. Рішення на основі сервера, наприклад, повертає табличний вихід, який має бути відображено більш естетично за допомогою іншого інструменту для написання звітів. Настільна база даних, як-от Microsoft Access, містить візуальний конструктор звітів, інтегрований із інструментом створення запитів, що дає змогу отримати єдиний доступ до звітів для прямого друку
Коли люди говорять про базу даних, то мають на увазі реляційну базу даних. Реляційна база даних складається з 3 компонентів високого рівня:
- Таблиці
- Зв’язки
- Ключі
Таблиці, ключі та зв’язки є трьома основними компонентами реляційної бази даних. Таблиці складаються з рядків і стовпців. Рядки представляють окремі сутності в таблиці, а стовпці представляють їхні атрибути. Ключі (первинні та зовнішні) є однією з ключових концепцій того, що забезпечує роботу реляційних баз даних. Зв’язки між таблицями є зв’язком, який робить дані набагато більш значущими. Вони пояснюють, як речі насправді пов’язані і що їх об’єднує. Без ключів і зв’язків, що зв’язують таблиці, немає істотної різниці між кількома електронними таблицями та реляційною базою даних.
Ну а тепер до найсмачнішого – переходимо до SQL, яка нам і помагає працювати зі всіма Базами Даних! Гоу-гоу!
Починаю з азів! SQL – проста мова програмування, яка має не так багато команд. Ну прям те, що треба для новачків. Мова розроблена для роботи з БД, щоб отримувати/добавляти/змінювати дані, мати можливість опрацьовувати великі масиви інфи та швидко отримувати її структурованою/згрупованою. Є багато варіантів мови SQL, але у них всіх основні команди майже однакові.
Також існує і багато СУБД (систем управління баз даних, але основними з них являються: Microsoft Access, Microsoft SQL Server, MySQL, Oracle SQL, IBM DB2 SQL, PostgreSQL та Sybase Adaptive Server SQL. Щоб працювати з SQL-кодом, тобі потрібна буде одна з вищеперелічених СУБД. SQL, як і інші мови програмування, має свої команди (оператори), за допомогою яких віддають вказівки для вибірки даних.
Що далі сказать? SQL, як проста і легка у вивченні мова в галузі вільного програмного забезпечення, сьогодні активно застосовується:
- розробниками баз даних (забезпечують функціональність додатків),
- тестувальниками (у ручному та автоматичному режимі)
- адміністраторами (виконують підтримку працездатності середовища).
Мова максимально універсальна і має чітко визначену структуру за рахунок усталених стандартів. Взаємодія з БД відбувається швидко навіть у ситуаціях, коли обсяги даних великі (Big Data). Крім того, ефективне управління можливе навіть без особливих знань коду
Області застосування та де використовується SQL:
- SQL DDL (Як мову визначення даних (DDL) він дає можливість незалежно створювати базу даних, визначати її структуру, використовувати, а потім скидати після завершення маніпуляцій)
- SQL DML (В якості мови керування даними (DML) — для підтримки вже існуючих баз даних на ефективній з точки зору трудовитрат і продуктивності мові введення, зміни та вилучення даних щодо БД)
- SQL DCL (Як мова контролю даних (DCL), коли потрібно захистити свою базу даних від пошкодження та неправильного використання)
- SQL сервер/клієнт (Відкривають єдину систему входу (SSO) з автентифікацією користувача в декількох веб-додатках в рамках єдиного сеансу)
- SQL трирівневої архітектури (Гарантує захист інформаційної складової від несанкціонованого використання та копіювання у цифровому вигляді)
За команди не будемо говорити – вникнеш вже при роботі ;)