
- •1 Основные компоненты системы баз данных
- •2 Развитие концепции бд: от файловых систем к распределенным базам данных
- •3 Краткая характеристика современных систем управления базами данных
- •4 Понятия схемы и подсхемы, логический и физический уровни представления данных
- •5 Модели данных
- •Пользователя редко интересуют все потенциально возможные комбинации значений измерений. Для этого используются срезы, отображения страниц, вращение, нарезка на кубики, агрегация, детализация.
- •6. Языки описания баз данных
- •7 Языки манипулирования данными, концепции и возможности языка sql
- •Операторы sql для управления соединениями. В эту группу входят операторы connect, set connection и disconnect. Оператор connect определяется следующими синтаксическими правилами:
- •Команда select – выборка, самая часто используемая команда, с помощью её идет выбор данных из таблицы. Запроса с применением select выглядит с.О.:
- •Структура команды select следующая:
- •Insert into users_base (user_name, city, birth_day) values (‘Александр’, ‘Ростов’, ’20.06.1991’);
- •Такой запрос выведет только те строки, которые будут соответствовать условию where.
- •Оператор exists может быть полезен для вовлечения внешних ключей (foreign keys). В следующем примере идет проверка, имеет ли значение атрибута 'fred the 45' какое-либо задание. Первый вариант:
- •8 Архитектура "клиент-сервер"
- •9 Концепции и возможности субд Oracle
- •10 Концепции и возможности субд access
- •11 Методика и организация обследования пользователей
- •12 Выявление целей и факторов, способствующих и препятствующих созданию бд
- •Стратегиями могут быть:
- •Тактики по существу представляют собой задачи, которые необходимо решить, чтобы действовать в соответствии с выбранной стратегией, например:
- •13 Методы выявление информационных потребностей пользователей
- •14 Методы анализа запросов пользователей
- •15 Определение необходимой информации для различных видов деятельности
- •16 Методы и средства документирования массивов и баз данных
- •17 Преимущества централизованных и распределенных бд
- •18 Сравните понятия расчлененная и тиражируемая бд. Когда одна из них предпочтительнее, чем другая?
- •19 Опишите, чем отличаются распределенные и централизованные системы бд
Insert into users_base (user_name, city, birth_day) values (‘Александр’, ‘Ростов’, ’20.06.1991’);
Команду INSERT можно использовать для вставки данных из другой таблицы:
INSERT INTO Name_Table_2
SELECT Name_1, Name_3, Name_4
From Name_Table_1
WERE Name_5=3
UPDATE users_base SET user_name = ‘Алексей’;
Кавычки в значении редактируемого атрибута ставятся в том случае если значение имеет string формат, если это числовое значение и столбец не привязан к типу данных varchar и любых других строковых типов, то кавычки не имеют смысла.
DELETE FROM users_base WHERE user_name = ‘Василий’;
Команда DELETE удаляет строку целиком, определяет строку по ключевому слову WHERE. Этот запрос удалит все строки, в которых значение столбца user_name=Василий.
Совместное использование SQL c традиционными языками программирования (Си, Паскаль, др.)
OPEN File_1
EXEC SQL
DECLARE File_1
FOR
SELECT *
FROM Table_1
WERE Name_2= nn
END-EXEC
CLOSE File_1
Выполнение запроса можно разделить на три фазы. Первая фаза это компиляция или разбор (parse) запроса, вторая - подстановка значений переменных (bind), и третья выборка результатов (fetch). Во время компиляции SQL запрос преобразуется во внутреннее представление в те коды, которые воспринимаются СУБД. СУБД выполняет следующие действия:
просматривает словарь данных и выполняет проверку прав доступа. Для этого СУБД генерирует несколько SQL запросов, которые называются рекурсивными запросами (recursive queries), с помощью который проверяет, имеет ли данный пользователь право доступа к указанному столбцу и т.д.
оптимизирует запрос. Здесь выполняется та оптимизация, которая вызвана обращением к представлениям (view) и выполнением подзапросов.
Поскольку вышеперечисленные операции занимают определенное время и требуют ресурсов процессора, то заставлять СУБД выполнять их нужно как можно реже.
Вторая фаза, фаза подстановки (bind), выполняется после компиляции запроса. Во время этой фазы выполняется подстановка значения переменных в запрос. Например, при обработке запроса:
SELECT 'x' FROM person WHERE name = :1
значение некоей переменной 1 будет подставлено в запрос по адресу, зарезервированному указателем :1.
Определения представления данных - окно, через которое видна часть БД (из одной или нескольких таблиц)
CREATE VIEW Table_V
AS SELECT Name_2, Name_3, Name_4, Name_5
FROM Table_1
Критерии, функции, условия
WHERE- предложение команды SELECT и других команд, которое позволяет устанавливать предикаты, условие которых может быть или верным или неверным для любой строки таблицы. Команда извлекает только те строки из таблицы, для которых такое утверждение верно. Пример:
SELECT id, city, birth_day FROM users_base WHERE user_name = ‘Алексей’;
Такой запрос выведет только те строки, которые будут соответствовать условию where.
ORDER BY - условие для сортировки выбранных строк. Имеет два критерия ASC и DESC. ASC (сортировка от А до Я или от 0 до 9). DESC (противоположно от ASC). Пример:
SELECT id, city, birth_day FROM users_base ORDER BY user_name ASC;
Это условие можно использовать совместно с условием WHERE. Пример:
SELECT id, city, birth_day FROM users_base WHERE user_name = ‘Алексей’ ORDER BY id ASC;
DISTINCT - аргумент, который устраняет двойные значения из предложения SELECT. То есть если имеются повторяющиеся значения в столбце, допустим, user_name, то DISTINCT выведет только одно, например, если в БД есть два человека по имени ‘Алексей’, то запрос с использованием функции DISTINCT выведет только одно значение, которое встретит первым. Пример:
SELECT DISTINCT user_name FROM users_base;
AND - берет два Буля (в форме A AND B) как аргументы и оценивает их по отношению к истине, верны ли они оба. Пример:
SELECT * FROM users_base WHERE city = ‘Ростов’ AND user_name = ‘Александр’;
OR - берет два Буля (в форме A OR B) как аргументы и оценивает на правильность, верен ли один из них. Пример:
SELECT * FROM users_base WHERE city = ‘Ростов’ OR user_name = ‘Александр’;
NOT - берет одиночный Булев (в форме NOT A) как аргументы и заменяет его значение с неверного на верное или верное на неверное. Пример:
SELECT * FROM users_base WHERE city = ‘Ростов’ OR NOT user_name = ‘Александр’;
IN - определяет набор значений, в которое данное значение может или не может быть включено. Пример:
SELECT * FROM users_base WHERE city IN (‘Владивосток’, ‘Ростов’);
Between - похож на оператор IN, определяет диапазон, значения которого должны уменьшаться, что делает предикат верным. Пример:
SELECT * FROM users_base WHERE id BETWEEN 1 AND 10;
COUNT – выводит количество строк. Пример:
SELECT COUNT (*) FROM users_base ;
SELECT COUNT (DISTINCT user_name) FROM users_base;
SUM - производит арифметическую сумму всех выбранных значений данного поля. SELECT SUM (id) FROM users_base.
AVG - производит усреднение всех выбранных значений данного поля. Пример:
SELECT AVG (id) FROM users_base ;
MAX - производит наибольшее из всех выбранных значений данного поля.
MIN - производит наименьшее из всех выбранных значений данного поля.