
- •1.Субд FoxPro 2.0. Команды создания, открытия и закрытия бд. Рабочие области.
- •Краткая характеристика foxpro
- •2.Субд FoxPro 2.0.Коменда изменения структуры бд,дополнения и редактирования.
- •3. Команды FoxPro: If и Case.
- •4. Циклы в foxpro while, for, scan
- •5 Структура команд субд FoxPro
- •Команды вывода list и display
- •Команды перемещения по базе данных
- •Функции, связанные с указателем записи
- •Команды удаления данных
- •Команда изменения значения поля бд
- •Ускоренный поиск
- •Приблизительный поиск
- •8.Команда создания новой базы данных.
- •9 Команда sql по дополнению бд
- •Команда sql по дополнению бд
- •10 Команда sql по удалению записей (для Visual FoxPro)
- •Команда sql по удалению записей (для Visual FoxPro)
- •11 Общий вид команды формирования запроса select.
- •Указание результатов выборки и источника данных
- •Указание объекта, куда пересылается выборка:
- •Критерий отбора данных:
- •Группировка данных
- •Сортировка данных
- •12 Нормализация структуры данных.
- •Нормализация данных при реляционном подходе
- •Нормализация структуры данных
- •13 Нормализация отношений.
- •Пример нормализации отношений
- •14 Реляционные операторы.
- •Традиционные операции над множествами. Объединение (union).
- •Пересечение (intersect).
- •Вычитание (minus).
- •Произведение (times).
- •15 Специальные реляционные операторы: выборка, проекция, соединение, деление. Выборка (where)
- •Проекция [ ].
- •Соединение ( join ).
- •Деление (divideby)
- •Примеры реляционных выражений.
Сортировка данных
ORDER BY <колонка> [ASC/DESC] [, <колонка> [ASC/DESC]...]-задает упорядочивание по заданной колонке или колонкам. По умолчанию сортировка выполняется по возрастанию (ASC), но может быть задана и по убыванию(DESC).
Пример: Команда
SELECT klass, AVG(rost) FROM scola GROUP BY klass ORDER BY AVG(rost)
выводит список из номеров классов и средних ростов учеников этих классов. При этом список упорядочен в порядке увеличения среднего роста.
Команда
SELECT klass, fam, dr FROM scola ORDER BY klass, fam
выводит номер класса, фамилию и дату рождения учеников школы. При этом вывод упорядочен по номеру класса, а внутри каждого класса еще и по фамилии.
12 Нормализация структуры данных.
Термин relation - отношение - это математическое название таблицы. Термины отношение и таблица принято считать синонимами. На практике термин таблица используется чаще, чем термин отношение.
Реляционная модель данных - это абстрактная теория данных, основанная на некоторых положениях математики - в основном теории множеств и предикатной логики.
Принципы реляционной модели были изложены в 1969-70 годах доктором Е.Ф.Коддом (E.F.Codd), работавшим в фирме IBM. В конце 1968 года Кодд впервые осознал, что математические дисциплины можно использовать, чтобы привнести в область управления БД строгие принципы и точность. Именно таких качеств не доставало этой области в то время. Идеи, предложенные Коддом, стали общепризнанными и оказали существенное влияние на все аспекты технологии баз данных, а также и на другие области - искусственный интеллект, обработка естественных языков, разработка аппаратных систем.
Реляционная модель данных характеризуется выполнением трех требований:
1) представление данных в виде двумерных таблиц (отношений);
2) соблюдение целостности данных;
3) использование в работе с данными операторов реляционной алгебры и реляционного исчисления.
Далее коротко осветим по очереди эти требования.
При описании многих понятий и операторов, связанных с реляционной моделью данных используется БД поставщиков и деталей, ставшая эталоном в этой области.
Нормализация данных при реляционном подходе
В общем случае нормализация состоит из двух этапов. Первый этап нормализации представляет собой преобразование иерархической или сетевой структуры данных в реляционную структуру.
Цель первого этапа - это записать в одну или в несколько двумерных простых таблиц все данные. То есть первый этап можно назвать нормализацией структуры данных. Второй этап нормализации называется нормализацией отношений.
Если исходные данные формировались сразу в виде двумерных таблиц, то первый этап отсутствует. Такое происходит достаточно часто, так как для человека реляционный подход в работе с данными более привычен и удобен.
Нормализация структуры данных
Первый этап нормализации, то есть нормализация структуры данных - достаточно несложная работа. Например, есть иерархическая структура данных вида:
___ ___
Фирма: ___| А |__ _____| B |_______
| |___| | | |___| |
__|___ __|__ __|__ __|__ __|__
Изделие:| 1-ое | | 2-ое| | 3-е | | 1-е | | 1-е |
|______| |_____| |_____| |_____| |_____|
__|___ __|__ __|__ __|___ __|__
Место |Казань| |Бийск| | Орел| |Брянск| |Киев|
произ-а:|______| |_____| |_____| |______| |____|
__|___ __|__ __|__ __|___ __|__
Цена: | 20 | | 135 | | 15 | | 18 | | 16 |
|______| |_____| |_____| |______| |____|
Путем прохождения по веточкам эти данные легко записываются в двумерную таблицу вида:
___________________________________________________
| Номер | Название | Название | Место | Цена |
|записи | фирмы | изделия | производ.| |
|________|__________|__________|__________|_______|
| 1 | A | 1-ое | Казань | 20 |
| 2 | A | 2-ое | Бийск | 135 |
| 3 | B | 3-е | Орел | 15 |
| 4 | B | 1-ое | Брянск | 18 |
| 5 | B | 1-ое | Киев | 16 |
|________|__________|__________|__________|_______|
Если же имеет место сетевая структура данных, в которой, например, дается информация о среднем за месяц количестве посещений друг друга некоторым кругом знакомых,
___________ 5 ___________ 1 _________________
| Маша |--->| Саша |-->| баба Настя |
| | 10 | | | |
|___________|<---|___________| |________________|
| | 30 | | | |
| '----->--------|----------->--' | |
| | ,----->-----' |
| 1 __________ 2 | | |
'--->| Даша |<--' 5 | |
| |---->------' 2 ______ 4 |
|__________|<----------------| Коля |-->--'
|______|
то эту структуру можно записать в виде следующей таблицы, переходя от одного человека к другому и фиксируя его посещения:
____________________________________________
| Номер | Кто | К кому | Сколько |
| записи| | | раз |
|-------|-------|----------------|----------|
| 1 | Маша | Саша | 5 |
| 2 | Маша | баба Настя | 30 |
| 3 | Маша | Даша | 1 |
| 4 | Саша | Маша | 10 |
| 5 | Саша | Даша | 2 |
| 6 | Саша | баба Настя | 1 |
| 7 | Коля | Даша | 2 |
| 8 | Коля | баба Настя | 4 |
| 9 | Даша | баба Настя | 5 |
|_______|_______|________________|__________|