- •Язык php
- •Динамические сайты
- •Преимущества обработки страниц на стороне сервера
- •Современные технологии обработки страниц на стороне сервера
- •Active Server Pages (asp)
- •Java Servlets и jsp
- •Контрольные вопросы
- •Возможности языкаPhp ОбработкаHtmLформ
- •ГенерированиеHtmLстраниц
- •Взаимодействие с субд
- •Поддержка большого количества библиотек
- •Контрольные вопросы
- •Создание динамических страниц Создание простейшегоPhp-скрипта
- •Рнр и код, выполняемый на стороне клиента
- •Взаимодействие с пользователем
- •Контрольные вопросы
- •Синтаксис языкаPhp Типы данных
- •Константы
- •Объявление и инициализация переменных
- •Преобразование типов
- •Арифметические операторы
- •Унарный оператор
- •Оператор конкатенации строк
- •Сокращенная запись для присвоениязначений переменным
- •Операторы сравнения
- •Условные операторы
- •Функции пользователя
- •Массивы
- •Работа с файлами
- •Контрольные вопросы
- •Рнр иMySql Обработка и хранение структурированных данных
- •Динамические сайты, использующие базу данных
- •Построение реляционной базы данных
- •Продавцы
- •Заказчики
- •SqLзапросы к реляционной базе данных
- •Insert into salespeople values(1001,'Иванов','Москва',0.12);
- •Insert into customers values(2001,'Белкин','Москва',100,1001);
- •Insert into orders values(3008,4723.00,'2002-10-05',2006,1001);
- •Особенности реализацииMySql
- •ВзаимодействиеPhp иMySql
- •Контрольные вопросы
- •Разработка системы "Прайс-лист"
- •Постановка задачи
- •Принципы функционирования программного комплекса
- •Разработка структуры базы данных
- •Проектирование системы администрирования
- •Проектирование генератора прайс-листа
- •Контрольные вопросы
Insert into salespeople values(1001,'Иванов','Москва',0.12);
Занесение записи в таблицу "Продавцы".
Insert into customers values(2001,'Белкин','Москва',100,1001);
Занесение записи в таблицу "Заказчики".
Insert into orders values(3008,4723.00,'2002-10-05',2006,1001);
Занесение записи в таблицу "Продавцы".
Следующий блок содержит команды модификации внутренней структуры базы данных.
drop database mybase;
Удалить базу данных MyBase.
alter table customers rename clients;
Переименовать таблицу customers в clients.
alter table salespeople modify sname varchar(50);
Изменить в таблице salespeople тип данных столбца snmae на varchar(50)
alter table orders add info text;
Добавить в таблицу orders поле info, содержащее данные типа text.
alter table customers drop snum;
Удалить из таблицы customers поле snum.
drop table orders;
Удалить таблицу orders.
Далее будет представлен блок команд, модифицирующих данные в таблице.
delete from salespeople;
Удалить все записи из таблицы salespeople.
delete from salespeople where snum = 1003;
Удалить записи из таблицы salespeople, у которых значение поля snum=1003.
update customers set rating = 200;
В таблице customers установить для всех записей значение поля rating, равное 200.
update customers set rating = 200 where snum = 1001;
В таблице customers установить значение поля rating, равное 200, для тех записей, у которых значение поля snum=1001.
Одно из основных достоинств языка SQL – стандартизованный синтаксис для организации выборки информации из таблиц. Ниже будут представлены примеры команд, иллюстрирующие выборку из таблиц созданной базы данных.
select snum, sname, city, comm from salespeople;
Выбрать значения полей snum, sname, city, comm для каждой записи из таблицы salepeople
select * from salespeople;
Выбрать значения всех полей для всех записей из таблицы salespeople
select distinct snum from orders;
Выбрать все уникальные значения поля snum из таблицы orders. Ключевое слово distinct позволяет обеспечить только однократное вхождение в выборку каждого значения snum (в таблице orders за каждым продавцом может числиться несколько заказов)
select sname from salespeople where city = 'Москва';
Выбрать все значения полей sname для каждой записи из таблицы salespeople, у которой значение поля city=’Москва’ (другими словами – выбрать идентификаторы продавцов, проживающих в Москве)
select * from customers where rating >= 100;
Выбрать всю информацию о заказчиках с рейтингом большим или равным 100
select * from customers where city = 'Екатеринбург' and rating > 200;
Выбрать всю информацию о заказчиках, проживающих в Екатеринбурге с рейтингом более 200
select sum(amt) from orders;
Посчитать суммарную стоимость всех заказов, представленных в таблице orders. В данном запросе была использована агрегатная функция sum. В стандарте SQL также определены агрегатные функции max, min, avg, count.
select count(*) from salespeople;
Посчитать количество записей в таблице salespeople (фактически посчитать количество продавцов)
select * from customers order by city;
Выбрать всю информацию о заказчиках и упорядочить выборку по значению поля city
select * from orders order by cnum, amt;
Выбрать всю информацию о заказах и упорядочить выборку по значению полей cnum и amt. При упорядочении по нескольким полям данные сначала упорядочиваются по значению внешнего поля. В случае, если значения внешнего поля совпадают у нескольких записей, данные упорядочиваются по значению внутреннего поля итд в порядке перечисления упорядочивающих полей.
select customers.cname, salespeople.sname, salespeople.city from salespeople, customers where salespeople.city = customers.city;
Выбрать имена продавцов, покупателей живущих в одном городе, а так же название города, в котором они проживают. Данный пример иллюстрирует запрос, связывающий несколько таблиц. Количество таблиц, одновременно участвующих в запросе не ограничено.