MY SQL SERVER MANEGMENT STUDIO
При помощи SQL запросов составь запросы на создания данных таблиц и создания между ними вторичного ключа.
create table departments(
department_id int primary key identity(1,1),
name varchar(20));
create table employees(
employee_id int primary key identity(1,1),
firstmane varchar(20),
lastname varchar(20),
birthdate date,
department_id int,
FOREIGN KEY (department_id) REFERENCES departments(department_id)
)
Заполни таблицы произвольными данными при помощи запроса INSERT (2-3 записи)
insert into departments(name) values('Accounting'), ('HR Department'), ('IT department')

insert into employees(firstmane, lastname, birthdate, department_id) values('Kyrylo', 'Chernykh', '2005-10-05', 2);
insert into employees(firstmane, lastname, birthdate, department_id) values('Oleksei', 'Rudenko', '2004-02-05', 1);
insert into employees(firstmane, lastname, birthdate, department_id) values('Mikhail', 'Bajandin', '2004-11-05', 3);

Диаграмма

Добавь свою связанную таблицу к имеющейся, заполни ее.
create table employeeInfo(
employeeInfoID int primary key identity(1,1),
salary int,
hiringDate date,
);
insert into employeeInfo(salary, hiringDate) values( 1200, '2005-10-05');
insert into employeeInfo(salary, hiringDate) values( 1500, '2004-02-05');
insert into employeeInfo(salary, hiringDate) values( 2500, '2004-11-05');

alter table employees
add employeeInfoID int
alter table employees
add foreign key employeeInfoID references employeeInfo(employeeInfoID)
UPDATE employees
SET employeeInfoID = 1
WHERE firstmane ='Kyrylo';
UPDATE employees
SET employeeInfoID = 2
WHERE firstmane ='Oleksei';
UPDATE employees
SET employeeInfoID = 3
WHERE firstmane ='Mikhail';

Составь 3 своих запроса на основании двух связанных таблиц.
INNER JOIN
select e.*, d.name as department_name
from employees e
inner join departments d on e.department_id = d.department_id;

LEFT JOIN
select e.*, ei.salary, ei.hiringDate
from employees e
left join employeeInfo ei on e.employeeInfoID = ei.employeeInfoID;

RIGHT JOIN
select e.*, ei.salary, ei.hiringDate
from employees e
right join employeeInfo ei on e.employeeInfoID = ei.employeeInfoID;

Составь процедуру для поиска имен в таблице, состоящих из определенного количества символов. Количество символов вводится при запуске процедуры.
CREATE PROCEDURE SearchEmployeeNamesByLength
@NameLength INT
AS
BEGIN
SELECT *
FROM employees
WHERE LEN(firstmane) = @NameLength;
END;
exec SearchEmployeeNamesByLength @NameLength = 7;

XAMPP
При помощи SQL запросов составь запросы на создания данных таблиц и создания между ними вторичного ключа.
create table departments(
department_id int AUTO_INCREMENT primary key,
name varchar(20));
create table employees(
employee_id int primary key AUTO_INCREMENT,
firstname varchar(20),
lastname varchar(20),
birthdate date,
department_id int,
FOREIGN KEY (department_id) REFERENCES departments(department_id)
)
Заполни таблицы произвольными данными при помощи запроса INSERT (2-3 записи)
insert into departments(name) values('Accounting'), ('HR Department'), ('IT department')

insert into employees(firstname, lastname, birthdate, department_id) values('Kyrylo', 'Chernykh', '2005-10-05', 2);
insert into employees(firstname, lastname, birthdate, department_id) values('Oleksei', 'Rudenko', '2004-02-05', 1);
insert into employees(firstname, lastname, birthdate, department_id) values('Mikhail', 'Bajandin', '2004-11-05', 3);

Добавь свою связанную таблицу к имеющейся, заполни ее.
create table employeeInfo(
employeeInfoID int primary key AUTO_INCREMENT,
salary int,
hiringDate date
);
insert into employeeInfo(salary, hiringDate) values( 1200, '2005-10-05');
insert into employeeInfo(salary, hiringDate) values( 1500, '2004-02-05');
insert into employeeInfo(salary, hiringDate) values( 2500, '2004-11-05');

alter table employees
add employeeInfoID int
alter table employees
add constraint fk_employeeInfoID
foreigh key (employeeInfoID)
references employeeInfo(employeeInfoID);
update employees
set employeeInfoID = 1
where firstname = 'Kyrylo';
update employees
set employeeInfoID = 2
where firstname = 'Oleksei';
update employees
set employeeInfoID = 3
where firstname = 'Mikhail';

Составь 3 своих запроса на основании двух связанных таблиц.
INNER JOIN
select e.*, d.name as department_name
from employees e
inner join departments d on e.department_id = d.department_id;

LEFT JOIN
select e.*, ei.salary, ei.hiringDate
from employees e
left join employeeInfo ei on e.employeeInfoID = ei.employeeInfoID;

RIGHT JOIN
select e.*, ei.salary, ei.hiringDate
from employees e
right join employeeInfo ei on e.employeeInfoID = ei.employeeInfoID;

Составь процедуру для поиска имен в таблице, состоящих из определенного количества символов. Количество символов вводится при запуске процедуры.

CALL SearchEmployeeNamesByLength(7);
