Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
управление данными 2.doc
Скачиваний:
14
Добавлен:
07.11.2018
Размер:
2.08 Mб
Скачать
    1. 6.6. Ход работы

Для заполнения созданной базы данных тестовой информацией в диалоговом режиме программы "IB Expert" необходимо выполнить следующие действия:

    1. 1. Подключиться к базе данных.

    2. 2. Открыть окно с таблицей, в которую будет заноситься информация.

    3. 3. Перейти на вкладку "Data" (рис. 22). На этой вкладке располагается сетка со строками и столбцами.

Рис. 22. Окно ввода данных в таблицу

При вводе полей есть возможность использования различных диалогов, таких как календарь, калькулятор или окно ввода поля внешнего ключа.

    1. 4. Ввести данные, используя для добавления строки клавишу [Insert] или кнопку, а для удаления строки – клавиши [Ctrl+Delete] или кнопку .

    2. 5. После ввода данных для сохранения их в базе данных необходимо зафиксировать изменения кнопкой [Commit Transaction] (Ctrl+Alt+C). Чтобы отменить сделанные изменения, можно воспользоваться кнопкой [Rollback Transaction] (Ctrl+Alt+R).

    1. 6.7. Отчет о выполнении работы

Отчет о выполнении лабораторной работы №6 необходимо оформить на листах формата A4.

Отчет должен содержать описание и результаты работы, представляемые в следующей последовательности:

    1. 1. Распечатка сценария создания базы данных с комментариями, которые должны содержать сведения об авторе, дате создания, всех выполняемых действиях и пояснения к введенным вручную операторам изменения данных.

    2. 2. Сведения о количестве введенных в каждую таблицу тестовых данных.

    3. 3. Перечень файлов, полученных при выполнении лабораторной работы с указанием их имен, места расположения, даты изменения и размеров (сценарий, база данных, резервная копия базы данных, файл с отчетом).

    1. 6.8. Контрольные вопросы

    2. 1. Что такое DML?

    3. 2. Какие бывают разновидности оператора вставки новых данных?

    4. 3. Как удалить из таблицы сразу все строки?

    5. 4. Как удалить из таблицы только некоторые строки?

    6. 5. Как изменить все строки таблицы?

    7. 6. Как изменить только некоторые строки?

    8. 7. Написать синтаксис оператора вставки данных.

    9. 8. Написать синтаксис оператора удаления данных.

    10. 9. Написать синтаксис оператора обновления данных.

    11. 10. Привести примеры операторов INSERT, DELETE, UPDATE.

    12. 11. Как добавить данные в несколько таблиц?

    13. 12. Как удалить данные из нескольких таблиц?

    14. 13. Как изменить данные в нескольких таблицах?

    15. 14. Как запретить уменьшать значение какого-либо поля, но разрешить его увеличивать?

    16. 15. Как разрешить вносить изменения в базу данных только в определенные дни недели?

    17. 16. Как разрешить вносить изменения только определенным пользователям?

    1. 7. Лабораторная работа №7.

    2. Выборка данных

    3. 7.1. Цель работы

Изучить используемый в реляционных СУБД оператор извлечения данных из таблиц. Получить навыки работы с оператором SELECT в про-грамме "IB Expert".

Время выполнения: 6 часа.

7.2. Исходные данные

Исходными данными является индивидуальное задание и результат предыдущих лабораторных работ.

7.3. Используемые программы

Программы "IB Expert" и "Microsoft Word".

7.4. Теоретические сведения

Ниже приведен почти полный синтаксис оператора SELECT.

  1. SELECT [DISTINCT | ALL] {* | <величина> [, <величина> ...]}

  2. [INTO :Переменная [, :Переменная ...]]

  3. FROM <tableref> [, <tableref> ...]

  4. [WHERE <условие поиска>]

  5. [GROUP BY Колонка [, Колонка ...]]

  6. [HAVING <условие поиска>]

  7. [UNION [ALL] <select_expr>]

  8. [ORDER BY <список сортировки>];

  9. <величина> = {Колонка | :Переменная | <константа>

  10. | <выражение> | <функция>

  11. | udf ([<величина> [, <величина> ...]])

  12. | NULL | USER} [AS Псевдоним]

  13. <константа> = Число | 'Строка'

  14. <выражение> = SQL выражение, возвращающее единичное значение <функция> =

  15. COUNT (* | [ALL] <величина> | DISTINCT <величина>)

  16. | SUM ([ALL] <величина> | DISTINCT <величина>)

  1. | AVG ([ALL] <величина> | DISTINCT <величина>)

  2. | MAX ([ALL] <величина> | DISTINCT <величина>)

  3. | MIN ([ALL] <величина> | DISTINCT <величина>)

  4. | CAST(<величина> AS <тип данных>)

  5. | UPPER(<величина>)

  6. | GEN_ID(Имя_Генератора, <величина>)

  7. <tableref> = {<joined_table> | table | view

  8. | procedure[(<величина> [, <величина> ...])]}

  9. [Псевдоним]

  1. <joined_table> = <tableref> <join_type> JOIN <tableref> ON <условие поиска> | (<joined_table>) <join_type> = [INNER] | {LEFT | RIGHT | FULL } [OUTER]

<условие поиска> = <величина> <оператор сравнения> {<величина> | (<select_one>)}

| <величина> [NOT] BETWEEN <величина> AND <величина>

| <величина> [NOT] LIKE <величина> | <величина> [NOT] IN (<величина> [, <величина> ...] | <select_list>)

|<величина> IS [NOT] NULL | <величина> {>= | <=} <величина> | <величина> [NOT] {= | < | >} <величина> |

{ALL | SOME | ANY} (<select_list>)

| EXISTS (<select_expr>)

| SINGULAR (<select_expr>) | <величина> [NOT] CONTAINING <величина>

| <величина> [NOT] STARTING [WITH] <величина>

| (<условие поиска>) | NOT <условие поиска>

| <условие поиска> OR <условие поиска>

| <условие поиска> AND <условие поиска> <оператор сравнения> = {= | < | > | <= | >= | !< | !> | <> | !=}

<select_one> = оператор SELECT, выбирающий одну колонку и возвращающий ровно одно значение

<select_list> = оператор SELECT, выбирающий одну колонку, возвращающий ноль или много значений

<select_expr> = оператор SELECT, выбирающий несколько величин и возвращающий ноль или много значений <список сортировки> = {Колонка | Номер} [ASC | DESC] [, <список сортировки> ...]

Некоторые параметры, входящие в этот оператор, описаны в табл. 4.

Описание параметров оператора SELECT

Как видно из синтаксиса оператора SELECT, обязательными являются только предложение SELECT с перечнем выдаваемых колонок и предложе-ние FROM.

Пример простейшего оператора SELECT:

-- Выдать перечень всех служащих: SELECT * FROM Employee;

Ниже приведено несколько упрощенных вариантов синтаксиса опера-тора SELECT, помогающих научиться составлять простые запросы.

Упрощенный синтаксис внутреннего соединения (стандарт SQL-92):

SELECT Колонка [, Колонка ...] | * FROM <tableref_left> [INNER] JOIN <tableref_right> [ON <условие поиска>] [WHERE <условие поиска>];

Упрощенный синтаксис внешнего соединения:

SELECT Колонка [, Колонка ...] | * FROM <tableref_left> {LEFT | RIGHT | FULL} [OUTER] JOIN <tableref_right> [ON <условие поиска>] [WHERE <условие поиска>];

Упрощенный синтаксис использования подзапроса:

SELECT [DISTINCT] Колонка [, Колонка ...] FROM <tableref> [, <tableref> ...] WHERE {expression {[NOT] IN | <оператор сравнения>} | [NOT] EXISTS } (SELECT [DISTINCT] Колонка [, Колонка ...] FROM <tableref> [, <tableref> ...] WHERE <условие поиска> );