- •1.Аис. Понятие аис. Назначение.
- •2.Аис как совокупность функциональных подсистем.
- •3.Структура аис. Характеристика обеспечивающих подсистем.
- •4.Базовые типы аис. Фактографические аис.
- •5.Базовые типы информационных систем.Документальные системы.
- •6.Базовые типы информационных систем. Экспертные системы.
- •7.Базовые типы информационных систем . Гипертекстовый аис.
- •8.Жизненный цикл аис. Понятие жц. Этапы жц.
- •9.Модели жц. Каскадная модель жц.
- •10.Модели жц. Спиральная модель жц.
- •11.Основы технологий проектирования аис. Документ «Постановка задачи». Назначение. Состав документа.
- •12.Основы технологий проектирования аис. Документ «Техническое задание». Раздел «Общие сведения»
- •13.Основы технологий проектирования аис. Документ «Техническое задание». Раздел «Назначение и цели создания системы»
- •14.Основы технологий проектирования аис. Документ «Техническое задание». Раздел «Характеристика объектов автоматизации»
- •15.Основы технологий проектирование аис. Документ «техническое задание». Раздел «требование к системе».
- •16.Технология проектирования аис. Проект системы. Проектирование аис. Требование к выбираемой технологии проектирования.
- •17.Классификация методов проектирование системы:
- •18.Технологии проектирования аис. Case-технологии. Назначение, особенности. Классификация Case-средств.
- •20.Интегрированная среда разработки Delphi. Назначение. Возможности.
- •21.Иср Delphi. Назначение элементов рабочей области среды.
- •22.Иср Delphi. Взаимосвязь между отдельными частями проекта.
- •23.Иср Delphi. Структура файла проекта. Структура файла модуля формы.
- •24.Иср Delphi. Файлы проекта Delphi.
- •25.Иср Delphi. Компоненты ввода и отображения текстовой, числовой информации, дат, времени.
- •26.Иср Delphi. Компоненты отображения графической и мультимедийной информации.
- •27.Иср Delphi. Кнопки, индикаторы, управляющие элементы.
- •28.Иср Delphi. Компоненты меню. Панели и компоненты внешнего оформления.
- •29.Системные диалоги.
- •31.Обработка исключительных ситуаций. Обработка событий мыши.
- •Обработка событий мыши
- •32.Обработка исключительных ситуаций. Обработка событий клавиатуры.
- •33.Принципы построения баз данных. Построение логической модели данных системы. Определение связей между таблицами баз данных.
- •34.Понятие процессора бд bde. Назначение и возможности программы bde Administrator. Понятие псевдонима бд.
- •35.Программа DataBase Desкtop. Назначение и возможности программы.
- •Создание таблицы.
- •Описание полей
- •36.Программа DataBase Desкtop. Задание ограничений на ввод значений полей. Создание индексов. Парольная защита таблиц баз данных.
- •Задание индексов
- •37.Иср Delphi. Создание приложения для работы с бд. Компоненты доступа к данным. Назначение компонентов, из взаимосвязь.
- •2 Сценария:
- •38.Реляционный способ доступа к данным. Особенности языка структурированных запросов sql. Организация статического запроса.
- •Вопрос 39 Реляционный способ доступа к данным. Особенности языка структурированных запросов sql. Организация динамического запроса. Поиск, сортировка данных.
- •40.Навигационный способ доступа к данным. Организация способа доступа к данным. Работа с записями данных.
Вопрос 39 Реляционный способ доступа к данным. Особенности языка структурированных запросов sql. Организация динамического запроса. Поиск, сортировка данных.
Определение выборки — предложение WHERE
SQL дает возможность задать критерий определения строк, которые следует включить в состав выходных данных. Предложение WHERE команды SELECT позволяет определить предикат, условие, которое может быть либо истинным, либо ложным для каждой строки таблицы. Команда извлекает только те строки из таблицы, для которых предикат имеет значение "истина".
ПР: Предположим, необходимо узнать имена всех продавцов в Лондоне (London). В этом случае можно ввести следующую команду:
SELECT sname, city FROM Salespeople WHERE city = 'London';
При наличии предложения WHERE программа обработки базы данных просматривает таблицу строка за строкой и для каждой строки проверяет, истинен ли на ней предикат. Столбец city включен в результат не потому, что он указан в предложении WHERE, а потому, что имя этого столбца указано в предложении SELECT. Совершенно необязательно, чтобы столбец, используемый в предложении WHERE, был представлен в числе тех столбцов, которые необходимо видеть среди выходных данных.
Использование реляционных и булевых операторов.
Реляционный оператор — это математический символ, который задает определенный тип сравнения между двумя значениями. SQL распознает следующие операторы сравнения:
= Равно
> Больше, чем
< Меньше, чем
>= Больше или равно
<= Меньше или равно
<> Неравно
SQL распознает основные булевы операторы. Булевы выражения — это те выражения, относительно которых, подобно предикатам, можно сказать, истинны они или ложны. Булевы операторы связывают одно или несколько значений "истина/ложь" и в результате получают единственное значение "истина/ложь". Стандартные булевы операторы, распознаваемые SQL, — это AND, OR, NOT. Существуют и другие, более сложные булевы операторы (как, например, "исключающее ИЛИ. Далее перечислены булевы операторы и основные принципы их действия:
• AND берет два булевых выражения (в виде A AND В) в качестве аргументов и дает в результате истину, если они оба истинны.
• OR два булевых выражения (в виде A OR В) в качестве аргументов и оценивает результат как истину, если хотя бы один из них истинен.
• NOT берет единственное булево выражение (в виде NOT А) в качестве аргумента и изменяет его значение с истинного на ложное или с ложного на истинное.
Используя предикаты с булевыми операторами, можно значительно увеличить их избирательную мощность. Предположим, необходимо увидеть всех покупателей (customers) из San Jose, чей рейтинг (rating) превышает 200:
SELECT *FROM Customers WHERE city = 'San Jose' AND rating > 200;
При использовании OR , будут получены сведения обо всех тех покупателях (customers), которые либо проживают в San Jose, либо имеют рейтинг (rating), превышающий 200.
SELECT *FROM Customers WHERE city = 'San Jose' OR rating > 200;
Использование специальных операторов в «условиях»
Оператор IN
IN полностью определяет множество, которому данное значение может принадлежать или не принадлежать. Если нужно найти всех продавцов, расположенных либо в 'Barcelona', либо в 'London', основываясь только на том, что известно к настоящему моменту, необходимо написать следующий запрос:
SELECT *FROM SalespeopleWHERE city IN ('Barcelona', 'London');
Как видно из примера, IN определяет множество, элементы которого точно перечисляются в круглых скобках и разделяются запятыми.
Оператор BETWEEN
Оператор BETWEEN задает границы, в которые должно попадать значение, чтобы предикат был истинным. Используется ключевое слово BETWEEN, за которым следуют начальное значение, ключевое слово AND и конечное значение.
Следующий запрос позволит извлечь из таблицы Salespeople всех продавцов (salespeople), комиссионные которых имеют величину в диапазоне 0.2 и 0 .6:SELECT FROM Salespeople WHERE comm BETWEEN 0.1 AND 0.6;
Следующий запрос выбирает всех покупателей имена которых попадают в заданный алфавитный диапазон:SELECT *FROM Customers WHERE cname BETWEEN 'A' AND 'G';
Оператор LIKE
LIKE применим только к полям типа CHAR или VARCHAR, поскольку он используется для поиска подстрок. Для чего используются шаблоны — специальные символы, которые могут обозначать все, что угодно:
-
Символ "подчеркивание" (_) заменяет один любой символ.
-
Символ "процент" (%) заменяет последовательность символов произвольной длины, в том числе и нулевой.
Можно найти покупателей, фамилии которых начинаются на 'G' :SELECT * FROM Customers WHERE cname LIKE 'G%';
Упорядочение выходных полей
В SQL применяется команда ORDER BY, позволяющая внести некоторый порядок в выходные данные запроса. Она их упорядочивает в соответствии со значениями одного или нескольких выбранных столбцов. Множество столбцов упорядочиваются один внутри другого, и можно задать возрастающую (ASC) или убывающую (DESC) последовательность сортировки для каждого из столбцов.
Таблица заявок (Orders), упорядоченная по номеру заявки, выглядит так:
SELECT* FROM Orders ORDER BY cnum DESC;
Внутри уже произведенного упорядочения по полю cnum можно упорядочить таблицу и по другому столбцу, например, amt: SELECT *FROM Orders ORDER BY cnum DESC, amt DESC;
Примеры динамических запросов к таблицам баз данных.
procedure TForm1.BitBtn1Click(Sender: TObject);
var
str:string;
begin
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('select* FROM klient.db');
case RadioGroup1.ItemIndex of
0:str:='WHERE Nklient=2';
1:str:='WHERE Nklient<2';
end;
Query1.SQL.Add(str);
Query1.Open;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
b:string;
begin
b:=edit1.Text;
Query2.Close;
Query2.SQL.Clear;
Query2.SQL.Add('select* from klient.db where Nklient="'+b+'"');
Query2.Open;
end;