Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Базы данных. Сетевая модель.Стр 1 из 4Следующая ⇒
Базы данных. Сетевая модель. Тип связи определяется для 2х видов записи(предок и потомок).Экземпляр типов записи состоит из 1го экземпляра типов записи предков и упорядоченного набора одного или нескольких экземпляров типов записи потомков. Для данного типа записи L с типа записи Р и типом записи потомков С должны выполнятся 2 условия: 1) Каждый экз типа Р явл предком тока в одном экз L. 2) Каждый экз С явл потомком не более чем в одном экз L. При орг сетевой модели наклад ограничение и возможны ситуации: 1) Тип записи потомка в одном типе записи L1 м.б. типом записи предка в другом экз типа связи L2. 2) Данный тип связи Р м.б. типом записи предка в любом числе типов связей. 3) Данный тип записи Р м.б. типом записи потомком в любом числе типов связей. 4) Может существовать любое число типов связей с одним и тем же типом записи предка и одним и тем же типом записи потомком. Если l1 и L2 два типа записи с одним и тем же типом записи предка Р, и одним и тем же типом записи С отличаются правилами по которым образуются родство. 5) Тип записи Х и У м.б. предком и потомком в одной связи и потомком и предком в другой. 6) Предок и потомок м.б. одного типа записи. 1) найти конкретно запись в наборе однотипных записей. 2) Перейти от предка к первому потомку по некоторой связи. 3) Перейти к след потомку по некоторой связи. 4) Перейти от потомка к предку по некоторой связи. 5) Создать или уничтожить запись. 6) Модифицировать запись. 7) Включить, исключить в запись или перенести. В принципе поддержание целостности не требуется за исключением целостности по ссылкам как в иерархической. Реляционная модель. Базируется на отношениях и их представлении таблицами. Предложена Коддом. Отношение обладает всеми свойствами множеств. Важнейшее свойство языков данной модели-возможность определять новое отношение, основываясь на существующих отношениях и используя реляционную алгебру и реляционные исчисления. Реляционная модель данных. Элементы теории множеств. Множество-правило для принадлежности. Если В не равно А то В-собственное подмножество. Функции над подмножествами. 1) Объединение. 2) Пересечение 3)Вычитание
Если класс объектов на которых определеляются различн множества которые обозначит юниверсал….
Функциональное Однозначные функции 1) Вова любит водяру 2) Петя любит Машу 3) Маша любит Петю 4) Маша любит Машу 5) Лена любит Петю Отношение-любит. Второй способ отображения-графы …………………………………………………….. Третий-матричный
Четвёртый-табличный
Отношение в степени 3
Бывают два вида ограничений: 1) Синтаксический. Нельзя добавить 2 строки, потому что это мн-во. 2) Семантический. Нельзя добавить те строки которых быть не может. Лекция №3 Реляционная алгебра Замкнутость реляционной алгебры. Реляционная алгебра представляет собой набор операторов использующих отношение в качестве аргументов и возвращающие отношение в качестве результатов. Реляционная алгебра является замкнутой так как в качестве аргументов в реляционные операторы можно подставить другие реляционные операторы подходящие по типу. Реляционные операторы: 1) Теоретико-множественные операторы (оператор объединения, оператор пересечения, оператор вычитания, оператор декартового произведения). 2) Специальные реляционные операторы (операторы выборка, проекция, соединения и деления). Синтаксис выборки A WHERE c Пример:
A where зп<3000; (зарплата меньше 3 тыс руб.) Итог:
Данная операция даёт горизонтальный срез отношению. Оператор Проекция. Проекция отношения А по атрибутам х,у,z…где каждый атрибут принадлежит отношения А называется отношением с заголовком х,у,z и телом содержащим множество картежей вида (х,у,z), таких для которых в отношении А найдутся картежи со значением атрибута Х равного х, У=у и Z=z. Синтаксис: А[x,y,z] Даёт вертикальный срез отношения в котором удалены все возникшие при таком срезе дубликаты картежей.
Пример:
А[город поставщика] будет иметь вид:
Соединение. Разновидности: 1) Общая операция соединения. Соединением отношения А и В по условию с, называется отношением вида (A TIMES B) where c, где С-логическое выражение в которое могут входить атрибуты отношения А и В или скалярные выражения. Операция соединения-это р-т последовательного применения операции декартового произведения и выборки. 2) Тетта-соединение. Пусть отношение А содержит атрибут х, отношение В содержит атрибут у. А тетта – один из операторов сравнения, тогда тетта соединение отношения А по атрибуту х с отношение В по атрибуту у, называется отношением (А Times B) where x «тетта» у. Пример:
Отношение детали:
Вопрос:какие поставщики имеют право поставлять какие детали? Ответ: A[x>=y]B.А само отношение будет выглядеть
3) Экви-соединение. Частичный случай тетта-соединиения, поэтому А[x=y]B. Пример: отношение Р
Отношение D
Отношение PD
Какие детали поставляются какими поставщиками записываются в след виде: P[N-пост=N-пост] (P rename n-пост as nпост 1) [N пост 1=n пост 2] (pdrename nпост as n пост 2)
4) Естественное. Пусть даны отношенияА с атрибутами (А1 а2 аn x1 x2 xn) и В(X1 X2 Xn b1 b2 bn) Естественным отношением А и В называется отношение с заголовком (А1 А2 Аn x1 x2 xn b1 b2 bn И телом(a1 a2 an x1 x2 xn b1 b2 bn) (a1 a2 an x1 x2 xn)принадлежит А и (x1 x2 xn b1 b2 bn)принадл В Аjoin B Естественное соединение проходит по всем одинаковым полям. Оно эквивалентно след последовательности раляционных операций: 1) Переименовать одинаковые имена 2) Выполнить декартовое произведение отношений 3) Выполнить выборку по совпадающим атрибутам имеющим одинаковые имена 4) Выполнить проекцию удалив повторяющие атрибуты 5) Переименовать атрибуты вернув им первоначальные имена Можно выполнить последовательное естественное соединение нескольких отношений: (A join B) join C= a join(Bjoin C)=a join B join C Пример: P join PD join D
Операция деления. Пусть даны отношения А(Х1 Х2 Хн У1 У2 Ун) и отношение В (У1 У2 Ун) Деление отношения А на В называется отношением с заголовком (х1 х2 хн) и телом содержащим но-во кортежей (х1 х2 хн) т.ч. для всех кортежей у1 у2 ун принадлеж В в отношении А найдётся кортеж (х1 х2 хн у1 у2 ун). Отношение А называют делимым, отношение В называют делителем. Синтаксис: А devidby b. В формулировке вопроса всегда есть всё и все. Пример: вопрос: Какие поставщики поставляют все детали?? 1) В качестве делимого возмём проэкцию X=PD[N_пост, N_дет]
Y=D[Nдет]
X devide by y Проверочная Получить имена поставщиков которые пост по крайней мере 1 гайку. 1й способ((((D where наим детали=гайка)join DP))jon P)[имя поставщика] 2ой способ(((d join Dp)join P)where наименование D =гайка)[наименование поставщика] 2)Поучить имена поставщиков поставляющих все детали ((DP [N_D, N_P] devideby D[D_N])join P)[наим пост] Получить имена поставщиков не пост деталь номер 2 T1-имена пост (табл) Т1=Р[N_P] T2=P join PD T3= T2 where N_D=2 T4=T3 [N_P] T5=T1 minus T4 T6 T5 join P T7=t6[имя] ((P[N_пост]minus ((P join DP)where N_D=2)[N_пост])join P)[наим_пост] Лекция Потенциальные ключи. Пусть дано отношение R, подмножество атрибутов «к» отношения R будем называть потенциальным ключом если «к» обладает следующими свойствами: 1) Свойство уникальности. В отношении не может быть 2х различных значений с одинаковым значение «К». 2) Свойство неизбыточности. Никакое подмножество «к» не обладает свойством уникальности. Отношение может иметь несколько потенциальных ключей. Первичный(ЗНАЧЕНИЕ НЕ ДОЛЖНО ПОВТОРЯТСЯ)и альтернативный ключ. Замечание: Первичный ключ служит средством идентификации, по нему мы можем однозначно определить объект, а так же потенциальный ключ служит единственным средством адресации на уровне картежей. Правило целостности сущности заключается в том что в первичном ключе атрибуты не могут принимать null-значение. Внешние ключи.
Ключевые поля-№ поставщика и № детали.
Пусть дано отношение R, подмножество «FK» отношения R будет называться внешним ключом если: 1) Существует отношение S с потенциальным ключом «k». 2) Каждое значение «FK» в отношении R всегда совпадает со значением «К» для некоторого картежа из S либо является null-значением. Отношение S называют родительским, отношение R-дочерним. Замечания: 1) Внешний ключ может быть простым и составным. 2) Внешний ключ должен быть определён на тех же доменах что и соответствующий первичный ключ родительского отношения. 3) Внешний ключ не обладает свойством уникальности. 4) Если внешний ключ всё-таки обладает свойством уникальности, то связь между отношениями имеет тип один к одному. 5) Значение внешнего ключа должно совпадать со значением потенциального ключа, то обратно не верно. 6) Для внешнего ключа не требуется чтобы он был компонентом некоторого потенциального. 7) Null-значение для атрибутов внешнего ключа допустимы только в том случае, когда атрибуты внешнего ключа не входят в состав потенциального ключа.
Логические операторы Оператор IS NULL Вывести ФИО, телефон, город, адрес из таблицы Клиенты тех клиентов, которые не являются предприятиями. SELECT Фамилия, Имя, Отчество, Телефон, Город, Адрес From клиенты Where предприятия IS Null 2) Оператор Between…and. Например: Выбрать все записи из таблицы Товары, Цена которых более 199, но меньше 2001. Отобразить все поля этой таблицы. SELECT* From товары Where цена BETWEEN 200 and 2000 Оператор IN Например: вывести клиентов из беларуси или украины(только ФИО и Страну) SELECT Фамилия, Имя, отчество, страна From клиенты Where(страна IN(‘Беларусь’, ‘Украина’) Оператор like ‘%’-заменяет последовательность символов ‘_’-заменяет единичный символ Например: вывести клиентов фамилия которых начинается с буквы М(тока ФИО и телефон) Select фамилия, имя, отчество, телефон From клиенты Where фамилия like ‘M%’ Оператор Exists Из таблицы товары вывести Наименование и цену тех товаров, количество продаж которых превышает 10(количество продаж отображается в таблице Продажи, которая связана с табл.Товары по коду товара) Select Товары From товары Where exist (select [код товара] From продажи Where (продажи продано>10) and (Товары.[код товара]=продажи.[код товара]))
6) Оператор all 7) Например: из таблицы Товары выбрать товары которые имеют цену большую чем цена всех товаров, проданных в количестве более 10. SELECT* FROM товары WHERE Цена>all(select продажи.цена From продажи WHERE продажи.продано>10) Операторы объединения a. Оператор and Например: выбрать все записи из таблицы товары, цена которых>50, но <1000. Отобразить все поля этой таблицы. Select* From товары Where (цена>50) and (цена <1000) b. Оператор or Например: выбрать все записи из таблицы Товары, цена которых меньше 50 или больше 1000. Отбразить все поля этой таблицы. Select* From товары Where (цена<50)or(цена>1000) c. Оператор отрицания not Например: вывести всех клиентов, кроме тех, которые из беларуси или украины(только ФИО и СТРАНУ).
Select фамилия, Имя, отчество, Страна From клиенты Where (страна not in (‘Беларусь’, ’Украина’)) Упорядочение данных. a. Order by Select {*|all|distruct поле1, поле2,…,полеN} From таблица1{,таблица2,…,таблицаN} Where условие Order by поле{asc|desc} b. Например: сортировать записи таблицы товары по алфавиту поля Наименование(вывести только поля категория, цена, наименование) Select наименование, категория, цена From товары Order by наименование или c. Сортировать все записи таблицы товары по убыванию цены(вывести только поля категория, цена, наименование) Select наименование, категория, цена From товары Order by цена desc Математические функции Abs-модуль Round-округление SQR-корень EXP-экспонента Log-логарифм Sin, cjs,tan-тригонометрические функции IIF-логическая функция Псевдонимы полей Select{*|all|district поле1,…,полеN, выражение1 as псевдоним 1,…,ВыражениеN as псевдоним N} From таблица1{,таблица2,…,таблица N} Where условие Например: подсчитать и вывести стоимость проданного товара. Вычисляемое поле назвать сума продажи. Select[код товара], цена, заказанно, проданно, цена*продано as[сумма продажи] From продажи Функции агрегирования. Count-подсчёт записей в таблице Min-возвращает минимальное значение в столбце Max-возвращает максимальное значение в стобце Sum- возвращает сумму содержащийся в столбце значений Avg-вычисляет среднее значение для содержащихся в столбце значений.
Например: подсчитать и вывести стоимость заказанного товара, стоимость проданного товара и стоимость товара, заказанного но ещё не проданного. Select count (продано) as [Всего записей], min(продано)as min, max (продано) as max, sum (продано)as [всего продано From продажи Продажи данных.
Группировка данных Select {*|all|distinct поле1,…,полеN} From таблица1{,таблица2,..,таблицаN} Where условие Group by {поле1, поле2,..,полеN} order by поле{ASC|DESC} например: выбрать поля наименование и категория из таблицы товары. Результат выборки упорядочить по нпзначению категория. Select наименование, категория From товары Group by категория, наименование Пример: вставка 1ой строки в таблицу Insert into поставщики(номер, наименование) Values (4, спиридонов);значения которые мы вставляем Обновление Update поставщики; имя таблицы Set наименование= «Пупкин»; служебное слово и Какое поле и на какое значение хотим поменять Удаление строк в таблице Delete From поставщики Where N=1
Группировка select Nдетали, sum(количество)as кол-во From поставки Group by Nдетали
Получить номера детали, сумарное количество которых превышает 400. Having-условие группы select Nдетали, sum(количество)as кол-во From поставки Group by Nдетали Having sum(кол-во)>400 Подзапросы Получить список поставщиков, статус которых меньше максимального статуса в таблице поставщиков Select наименование From поставщики Where статус<(Select max (статус) From поставщики) Очень часто используется оператор in Написать подзапрос которых выдает все данные о поставщиках которые поставляют деталь с номером 2. Через подзапрос с помощью оператора in Select P.name,p.num,p.status From p Where p.num in (select (поставки) From пост where Базы данных. Сетевая модель. Тип связи определяется для 2х видов записи(предок и потомок).Экземпляр типов записи состоит из 1го экземпляра типов записи предков и упорядоченного набора одного или нескольких экземпляров типов записи потомков. Для данного типа записи L с типа записи Р и типом записи потомков С должны выполнятся 2 условия: 1) Каждый экз типа Р явл предком тока в одном экз L. 2) Каждый экз С явл потомком не более чем в одном экз L. При орг сетевой модели наклад ограничение и возможны ситуации: 1) Тип записи потомка в одном типе записи L1 м.б. типом записи предка в другом экз типа связи L2. 2) Данный тип связи Р м.б. типом записи предка в любом числе типов связей. 3) Данный тип записи Р м.б. типом записи потомком в любом числе типов связей. 4) Может существовать любое число типов связей с одним и тем же типом записи предка и одним и тем же типом записи потомком. Если l1 и L2 два типа записи с одним и тем же типом записи предка Р, и одним и тем же типом записи С отличаются правилами по которым образуются родство. 5) Тип записи Х и У м.б. предком и потомком в одной связи и потомком и предком в другой. 6) Предок и потомок м.б. одного типа записи. 1) найти конкретно запись в наборе однотипных записей. 2) Перейти от предка к первому потомку по некоторой связи. 3) Перейти к след потомку по некоторой связи. 4) Перейти от потомка к предку по некоторой связи. 5) Создать или уничтожить запись. 6) Модифицировать запись. 7) Включить, исключить в запись или перенести. В принципе поддержание целостности не требуется за исключением целостности по ссылкам как в иерархической. Реляционная модель. Базируется на отношениях и их представлении таблицами. Предложена Коддом. Отношение обладает всеми свойствами множеств. Важнейшее свойство языков данной модели-возможность определять новое отношение, основываясь на существующих отношениях и используя реляционную алгебру и реляционные исчисления. Реляционная модель данных. Элементы теории множеств. Множество-правило для принадлежности. Если В не равно А то В-собственное подмножество. Функции над подмножествами. 1) Объединение. 2) Пересечение 3)Вычитание
Если класс объектов на которых определеляются различн множества которые обозначит юниверсал….
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 205; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 34.201.122.150 (0.19 с.) |