Зачем sql тестировщику и что ему нужно про него знать

29
ЗАЧЕМ SQL ТЕСТИРОВЩИКУ И ЧТО ЕМУ НУЖНО ПРО НЕГО ЗНАТЬ Безпалый Кирилл, HubSchool, ImpactUA Георгий Гулёв, HubSchool, EPAM Lviv

Upload: kyrylo-bezpalyi

Post on 12-Apr-2017

84 views

Category:

Education


7 download

TRANSCRIPT

Page 1: Зачем SQL тестировщику и что ему нужно про него знать

ЗАЧЕМ SQL ТЕСТИРОВЩИКУ ИЧТО ЕМУ НУЖНО ПРО НЕГО

ЗНАТЬБезпалый Кирилл, HubSchool, ImpactUA

Георгий Гулёв, HubSchool, EPAM Lviv

Page 2: Зачем SQL тестировщику и что ему нужно про него знать

СЕГОДНЯ В ПРОГРАММЕ

• Что такое SQL• Зачем он нужен тестировщику• Основные команды• Что надо знать по SQL при прохождении

собеседования

Page 3: Зачем SQL тестировщику и что ему нужно про него знать

ЧТО ТАКОЕ SQL

Page 4: Зачем SQL тестировщику и что ему нужно про него знать

ИЗ ВИКИПЕДИИ

Формальный непроцедурный язык программирования, применяемый для создания, модификации и управления данными в произвольной реляционной базе данных, управляемой соответствующей СУБД

Page 5: Зачем SQL тестировщику и что ему нужно про него знать

ДЛЯ ЛЮДЕЙ

SELECT Person.FirstName , Person.LastName , Employee.JobTitle , Employee.BirthDate , Department.Name as DepartmentName , Department.GroupName , Shift.Name AS ShiftName , Employee.LoginID , Employee.MaritalStatus , Employee.GenderFROM EmployeeDepartmentHistory as EDH INNER JOIN Shift ON EDH.ShiftID = Shift.ShiftID INNER JOIN Department ON EDH.DepartmentID = Department.DepartmentID INNER JOIN Employee ON EDH.BusinessEntityID = Employee.BusinessEntityID INNER JOIN Person ON Employee.BusinessEntityID = Person.BusinessEntityID

Язык для обработки (чтения/записи/удал

ения) информации записанной в виде

таблиц.

Page 6: Зачем SQL тестировщику и что ему нужно про него знать

ЗАЧЕМ ОН НУЖЕН ТЕСТИРОВЩИКУ

Page 7: Зачем SQL тестировщику и что ему нужно про него знать

SQL В ПРОГРАММИРОВАНИИ

• Реляционная БД - стандарт де-факто в способе хранения данных когда требуется гарантированное хранение и доступность информации.

• 99,9% веб-приложений и не только используют SQL базы данных как способ хранения информации.

Page 8: Зачем SQL тестировщику и что ему нужно про него знать
Page 9: Зачем SQL тестировщику и что ему нужно про него знать

ЧТО ЖЕ НА ПРАКТИКЕ

Page 10: Зачем SQL тестировщику и что ему нужно про него знать

ЕЩЕ

Page 11: Зачем SQL тестировщику и что ему нужно про него знать

ОСНОВНЫЕ КОМАНДЫ

Page 12: Зачем SQL тестировщику и что ему нужно про него знать

SELECT

• Оператор SELECT используется для извлечения информации или извлечения данных из одной таблицы.• Для извлечения информации из

нескольких таблиц используем JOIN-ы, UNION или INTERSECT• Для запроса надо задать минимум

три момента:• Столбцы для извлечения• Таблицы из которых извлекаем

информацию• Условия, если таковые имеются,

которым данные должны удовлетворять

Выборка информации из таблиц(ы)

SELECT hottiesFROM roomWHERE lame != ‘yes’

Page 13: Зачем SQL тестировщику и что ему нужно про него знать

СЛОЖНЫЕ УСЛОВИЯ

SELECT first_name, last_nameFROM employeesWHERE department = ‘shipping’ AND

gender = ‘F’ AND hired >= ‘2000-JAN-01’

SELECT first_name, last_nameFROM employeesWHERE department = ‘shipping’ OR

employee_id <= 610007Можно комбинировать несколько условий для удовлетворения ваших «тайных желаний».

Page 14: Зачем SQL тестировщику и что ему нужно про него знать

UNION

SELECT first_name, last_nameFROM employeesWHERE department = ‘shipping’UNIONSELECT first_name, last_nameFROM employeesWHERE hire_date

BETWEEN ‘1-Jan-1990’AND ‘1-Jan-2000’Команда UNION позволяет

объединить результаты любых двух или более запросов в одну

выборку, которая будет включать все строки, которые принадлежат

к запросу в этом объединении.

Page 15: Зачем SQL тестировщику и что ему нужно про него знать

EXCEPT И INTERSECT

• Команда EXCEPT возвращает все значения которые есть в левом запросе, но которые отсутствуют в правом.

• Команда INTERSECT возвращает все значения, которые возвращаются одновременно и левым и правым запросом.

Page 16: Зачем SQL тестировщику и что ему нужно про него знать

СВЯЗЫВАЕМ ТАБЛИЦЫ

• INNER JOIN – взять общее из двух таблиц

• OUTER JOIN – взять записи из одной или обеих таблиц, которые не имеют каких-либо соответствующих записей можно найти в другой таблице

• CROSS JOIN – возвращает все записи из одной таблицы со всеми записями из другой таблицы. ВСЕГДА добавляйте условия.

INNER JOINOUTER JOINSCROSS JOINS

Page 17: Зачем SQL тестировщику и что ему нужно про него знать
Page 18: Зачем SQL тестировщику и что ему нужно про него знать

ДЕМО

Page 19: Зачем SQL тестировщику и что ему нужно про него знать

INSERT

• INSERT INTO *ТАБЛИЦА*(*ПОЛЯ*)

• VALUES (*ЗНАЧЕНИЯ*)

Добавление информации

Page 20: Зачем SQL тестировщику и что ему нужно про него знать

ДЕМО

Page 21: Зачем SQL тестировщику и что ему нужно про него знать

UPDATE

• UPDATE *ТАБЛИЦА*SET *ПОЛЕ* = *ЗНАЧЕНИЕ*WHERE *УСЛОВИЯ*

Обновление существующей информации

Page 22: Зачем SQL тестировщику и что ему нужно про него знать

ДЕМО

Page 23: Зачем SQL тестировщику и что ему нужно про него знать

DELETE

• DELETE FROM *ТАБЛИЦА*[FROM *ТАБЛИЦЫ*][WHERE *УСЛОВИЯ*]

Удаление информации из таблицDELETE FROM lifeWHERE music_interests IN

(‘Justin Bieber’, ’Ані Лорак’)

Page 24: Зачем SQL тестировщику и что ему нужно про него знать

ДЕМО

Page 25: Зачем SQL тестировщику и что ему нужно про него знать

ДАЛЬШЕ ТОЛЬКО ВАША ФАНТАЗИЯ

Page 26: Зачем SQL тестировщику и что ему нужно про него знать

ВОПРОСЫ? :)

Page 27: Зачем SQL тестировщику и что ему нужно про него знать
Page 28: Зачем SQL тестировщику и что ему нужно про него знать

Передаю слово

МАСТЕРУ

Page 29: Зачем SQL тестировщику и что ему нужно про него знать