- •Недостатки файловых систем по сравнению с системами баз данных.
- •Понятие системы и информационной системы. Классификация информационных систем.
- •3. По выполняемым функциям и решаемым задачам:
- •4. По масштабу и интеграции компонент:
- •5. По характеру обработки информации на различных уровнях управления предприятием:
- •6. По уровням управления:
- •7. Классификация ис по функциональному признаку:
- •12. Классификация по сфере применения
- •13. По степени распределённости ис отличают:
- •Понятие системы баз данных и ее упрощенная схема.
- •Понятия интегрированности и разделяемости данных, независимости от данных и целостности данных применительно к системам баз данных.
- •Жизненный цикл базы данных. Этапы концептуального, логического и физического проектирования базы данных.
- •Понятия модели и модели данных. Логические модели данных.
- •Иерархическая модель данных, ее достоинства и недостатки.
- •Сетевая модель данных, ее достоинства и недостатки.
- •Реляционная модель данных. Ее отличие от графовых моделей (иерархической и сетевой).
- •Основные понятия реляционной алгебры.
- •Определение сущности в реляционной алгебре. Свойства сущности.(сложный, если честно)
- •Понятия возможного, первичного и альтернативного ключей.
- •Операции реляционной алгебры. Базовые реляционные операции.
- •Теоретико-множественные реляционные операции. Свойства реляционной операции декартова произведения.
- •Специальные реляционные операции.
- •Реляционные операции селекции и проекции.
- •Операция выборки
- •Операция проекции
- •Реляционная операция соединения. Ее разновидности.
- •Реляционная операция естественного соединения и ее свойства. Естественное соединение
- •Реляционная операция деления.
- •Примитивные и не примитивные реляционные операции. Оператор соединения
- •Оператор пересечения
- •Оператор деления
- •21. Типы связей между сущностями.
- •22. Связь между сущностями типа «один ко многим». Свойства внешнего ключа.
- •23. Связь между сущностями типа «многие ко многим». Ее преобразование при переходе к физической модели. Связи "многие ко многим"
- •24.Нормализация данных. Первая нормальная форма.
- •1 Нормальня форма
- •25.Нормализация данных. Вторая нормальная форма.
- •2 Нормальная форма
- •Нормализация данных. Третья нормальная форма и нормальная форма Кодда-Бойса.
- •27.Нормализация данных. Четвертая и пятая нормальные формы.
- •28. Целостность и непротиворечивость данных.
- •29.Основные и дополнительные правила ссылочной целостности.
- •30. Язык sql: основные команды манипулирования данными.
- •31. Язык sql: вставка новой записи в таблицу.
- •32. Язык sql: удаление записей из таблицы.
- •33. Язык sql: использование операторов in, between, like и ключевого слова null в условиях отбора данных.
- •34. Язык sql: обновление записей в таблице.
- •35. Язык sql: выборка данных из таблиц. Использование агрегатных функций и вычисляемых полей.
- •36. Язык sql: группировка строк набора данных.
- •Язык sql: соединение таблиц (внутреннее и внешнее).
- •Язык sql: использование подзапросов.
- •Язык sql: операторы exists, any, all в командах с подзапросом.
- •Язык sql: основные команды определения данных.
- •Язык sql: создание и использование представлений (просмотров) и индексов.
- •Назначение и функции субд.
- •Управление словарем данных и обеспечение безопасности данных в субд.
- •Обеспечение целостности данных в субд.
- •Управление многопользовательским доступом к данным в субд.
- •Управление резервным копированием и восстановлением данных в субд.
- •Механизм тиражирования (репликации) данных в субд.
- •Блочная репликация
- •Физическая репликация
- •Логическая репликация
- •Типы баз данных.
- •Иерархическая база данных, структура иерархических баз данных
- •Сетевая база данных, структура сетевых баз данных
- •Реляционные базы данных, структура реляционных баз данных
- •Особенности реляционных баз данных
- •Распределенные базы данных. Двенадцать правил Дейта для распределенных баз данных.
- •Системы «клиент/сервер».
- •Системы поддержки принятия решений.
- •Классификации
- •Структура
- •Преимущества
- •52. Хранилища данных. Их отличия от операционных баз данных
- •53 Подготовка данных применительно к хранилищам данных
- •54 Магазины (витрины) данных. Банки оперативных данных Красный – в рот я ебал такие вопросы
- •55 Многомерные базы данных. Разработка (извлечение) данных
- •ERwin: сильные и слабые связи между сущностями. Операции прямого и обратного проектирования.
- •Операции прямого и обратного проектирования
- •Sql Server: курсоры и триггеры, их виды, процесс использования.
34. Язык sql: обновление записей в таблице.
Синтаксис команды UPDATE
UPDATE [LOW_PRIORITY] [IGNORE] tbl_name
SET col_name1=expr1 [, col_name2=expr2, ...]
[WHERE where_definition]
[LIMIT #]
tbl_name
- Задает имя таблицы, в которой будут обновляться записи. На момент запуска команды UPDATE таблица с таким именем должна существовать в базе данных.
LOW_PRIORITY
- Если указан этот параметр, то обновление записи будет отложена до тех пор, пока другие сценарии не закончат чтение из этой таблицы.
IGNORE
- Если некоторые поля таблицы имеют ключи PRIMARY или UNIQUE, и производится обновление строки, в которой эти поля имеют дублирующее значение, то действие команды аварийно завершается и выдается ошибка №1062 ("Duplicate entry 'val' for key N"). Если в команде INSERT указано ключевое слово IGNORE, то обновление записей не прерывается, а строки с дублирующими значениями просто не изменяются.
SET
- После этого ключевого слова должен идти список полей таблицы, которые будут обновлены и непосредственно сами новые значения полей в виде:
WHERE
- Задает условие отбора записей, подлежащих изменению.
LIMIT
- Задает максимальное количество строк, которые могут быть изменены.
UPDATE |
|
`users` |
|
SET |
|
`country`='Russia' |
|||||||||||||
|
|
|||||||||||||
|
|
|||||||||||||
|
|
35. Язык sql: выборка данных из таблиц. Использование агрегатных функций и вычисляемых полей.
Выборка данных из нескольких таблиц, их обработка, а также использование подзапросов (запросов, которые нужны в качестве промежуточных для получения окончательного результата) относятся к теме сложных запросов. Сложные запросы будут рассмотрены в последующих главах, а в данной главе мы остановимся на задаче выборки данных из одной таблицы при относительно простых условиях отбора, группировки и сортировки записей. Тем не менее, операторы SQL, применяемые в простых запросах на выборку данных, используются и в сложных запросах, направленных не только на получение, но и на изменение данных. Начните с простого, чтобы потом было легко понять сложное. Я хотел сказать, что материал данной главы относится к фундаментальным темам SQL, не смотря на то, что многие пользователи баз данных пожелают им и ограничиться. Последнее меня не удивляет, поскольку материал этой главы сам по себе исключительно практичен.
Все SQL-выражения, предназначенные для выборки данных из существующих таблиц базы данных начинаются с ключевого слова (оператора) SELECT (Выбрать). Для уточнения запроса служат дополнительные операторы, такие как FROM (Из),WHERE (Где) и др. Сейчас важно понять и запомнить, что результатом выполнения запроса, сформулированного в виде SQL-выражения, является не что иное, как таблица, содержащая запрошенные данные. Эта таблица виртуальна в том смысле, что лишь только представляет результаты запроса и не принадлежит к базе данных. Замечу попутно, что SQL-позволяет изменять существующую базу данных — создавать и добавлять к ней новые таблицы, а также модифицировать и удалять уже существующие
SELECT * FROM authors;
SELECT titles.title,titles.yearpub,publishers.publisher
FROM titles,publishers
WHERE titles.pub_id=publishers.pub_id AND
titles.yearpub>1996;
SQL позволяет выполнять различные арифметические операции над столбцами результирующего отношения. В конструкции <список_выбора> можно использовать константы, функции и их комбинации с арифметическими операциями и скобками. Например, чтобы узнать сколько лет прошло с 1992 года (год принятия стандарта SQL-92) до публикации той или иной книги можно выполнить команду:
SELECT title, yearpub-1992 FROM titles WHERE yearpub > 1992;
В арифметических вражения допускаются операции сложения (+), вычитания (-), деления (/), умножения (*), а также различные функции (COS, SIN, ABS - абсолютное значение и т.д.). Также в запрос можно добавить строковую константу:
SELECT 'the title of the book is', title, yearpub-1992
FROM titles WHERE yearpub > 1992;
В SQL также определены так называемые агрегатные функции, которые совершают действия над совокупностью одинаковых полей в группе записей. Среди них:
AVG(<имя поля>) - среднее по всем значениям данного поля
COUNT(<имя поля>) или COUNT (*) - число записей
MAX(<имя поля>) - максимальное из всех значений данного поля
MIN(<имя поля>) - минимальное из всех значений данного поля
SUM(<имя поля>) - сумма всех значений данного поля
Следует учитывать, что каждая агрегирующая функция возвращает единственное значение. Примеры: определить дату публикации самой "древней" книги в нашей базе данных
SELECT MIN(yearpub) FROM titles;
подсчитать количество книг в нашей базе данных:
SELECT COUNT(*) FROM titles;
Область действия данных функции можно ограничить с помощью логического условия. Например, количество книг, в названии которых есть слово "SQL":
SELECT COUNT(*) FROM titles WHERE title LIKE '%SQL%'