46138 (751195), страница 2

Файл №751195 46138 (Базы данных SQL) 2 страница46138 (751195) страница 22016-08-02СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

Порожденная таблица - это таблица, порожденная прямо или косвенно из одной или нескольких других таблиц путем вычисления (). Значениями порожденной таблицы являются значения определяющих таблиц при ее порождении.

Представляемая таблица есть именованная таблица, определенная через (). Описание представляемой таблицы включает ее имя.

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

Сгруппированная таблица есть множество групп, порождаемых в ходе вычисления (). Группа - это мульти-множество строк, в которых все значения столбца (столбцов) группирования равны. Сгруппированную таблицу можно рассматривать как набор таблиц. Множественные функции могут применяться к индивидуальным кортежам внутри сгруппированной таблицы.

Сгруппированное представление - это представляемая таблица, порожденная из сгруппированной таблицы.

4.5 Ограничения целостности

Ограничения целостности определяют допустимые значения базы данных путем ограничения значений в базовых таблицах.

Ограничения целостности фактически проверяются после выполнения каждого (). Если базовая таблица, ассоциированная с ограничением целостности, не удовлетворяет этому ограничению целостности, то () не выполняется, и в параметр SQLCODE устанавливается определенное в реализации отрицательное число.

() требует, чтобы никакие две строки в таблице не имели одинаковых значений в указанном столбце или столбцах.

Спецификация NOT NULL требует, чтобы никакие значения в столбце не были неопределенными значениями.

() требует, чтобы для каждой строки одной указанной таблицы - "ссылающейся таблицы" - значения указанного столбца или столбцов либо включали как минимум одно неопределенное значение, либо были бы такими же, как значения указанного столбца или столбцов в некоторой строке другой указанной таблицы - "ссылаемой таблицы". Ссылающаяся таблица может быть той же самой таблицей, что и ссылаемая таблица.

() требует, чтобы указанное () не было ложно ни для какой строки таблицы.

4.6 Схемы

() есть долговременно хранимый объект, определенный на языке определения схем. Он состоит из () и всех (

), () и (), известных системе для указанного () в среде. Понятие среды определяется в реализации.

Таблицы, представления и привилегии, определенные через (), рассматриваются как "принадлежащие" или должные быть "созданными" (), определенным для этой схемы.

Замечание: В реализации могут обеспечиваться средства (такие, как DROP TABLE, DROP VIEW, ALTER TABLE и REVOKE), которые позволяют создавать, уничтожать и модифицировать определения таблиц, представлений и привилегий для данного () в разные моменты времени. Однако в этом стандарте рассматриваются только (), представляющие определения, которые известны системе в данный момент времени.

4.7 База данных

База данных есть набор всех данных, определенных () в среде. Понятие среды является определяемым реализацией.

4.8 Модули

() есть долговременно хранимый объект, определенный на языке модулей. () состоит из необязательного (), (), (), ноля или более курсоров, определенных через () и одной или более ().

Прикладная программа есть сегмент выполняемого кода, содержащий, возможно, несколько подпрограмм. Единственный () ассоциируется с прикладной программой в течение ее выполнения. Прикладная программа должна быть ассоциирована с самое большее одним (). Способ установления этой ассоциации, включающий возможное требование выполнения некоторого определенного в реализации оператора, определяется в реализации.

4.9 Процедуры

() состоит из (), последовательности () и одного ().

Прикладная программа, ассоциированная с (), может обращаться к () этого () через оператор "call", в котором определяется () этой () и задается последовательность значений параметров, число и () которых соответствует () этой (). Вызов () приводит к выполнению содержащегося в ней ().

4.10 Параметры

Параметр объявляется в () через (). () определяет () своего значения. Параметр либо принимает, либо поставляет значение соответствующего аргумента в вызове этой ().

4.10.1 Параметр SQLCODE

Параметр SQLCODE - это специальный целый параметр. Его значение устанавливается равным коду состояния, который либо означает, что вызов () завершился успешно, либо, что в течение выполнения () возникла исключительная ситуация.

4.10.2 Параметр-индикатор

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

4.11 Стандартные языки программирования

Стандарт определяет действия () в (), когда эти () вызываются программами, соответствующими определенным стандартным языкам программирования. Термины "стандартная программа на языке COBOL", "стандартная программа на языке FORTRAN", "стандартная программа на языке Pascal" и "стандартная программа на языке PL/1" относятся к программам, отвечающим критериям соответствия стандартов, перечисленных в разделе 2, "Ссылки" .

4.12 Курсоры

Курсор определяется через (). Для каждого () в () курсор фактически cоздается тогда, когда образуется транзакция (см. 4.16, "Транзакции"), ссылающаяся на этот (), и уничтожается, когда эта транзакция завершается.

Курсор находится либо в открытом состоянии, либо в закрытом состоянии. Начальное состояние курсора - закрытое. Курсор переходит в открытое состояние через () и возвращается в закрытое состояние через (), () или ().

Курсор в открытом состоянии определяет таблицу, порядок строк в этой таблице и позицию относительно этого порядка. Если () не включает () или включает (), не полностью определяющий порядок строк, то строки в таблице имеют порядок, полностью или частично определенный в реализации.

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

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

Позиция курсора в открытом состоянии может быть перед определенной строкой, на определенной строке или после последней строки. Если курсор установлен на строку, то эта строка является текущей строкой курсора. Курсор может быть установлен перед первой строкой или после последней строки, даже если таблица пуста.

() продвигает позицию открытого курсора на следующую строку в порядке этого курсора и выбирает значения столбцов этой строки. () изменяет текущую строку курсора. ( удаляет текущую строку курсора.

Если курсор установлен перед некоторой строкой, и новая строка заносится в эту позицию, то оказываемое этим возможное влияние на позицию курсора, если и есть, определяется в реализации.

Если курсор установлен на некоторую строку или перед некоторой строкой, и эта строка удаляется, то курсор устанавливается перед строкой, непосредственно следующей за позицией удаленной строки. Если такая строка не существует, то курсор устанавливается после последней строки.

Если при выполнении (), ссылающегося на открытый курсор, возникает ошибка, то возможное действие этого на позицию или состояние курсора определяется в реализации.

Рабочая таблица - это таблица, возникающая вследствие открытия курсора. Приводит ли открытие курсора к созданию рабочей базовой таблицы или рабочей представляемой таблицы, определяется в реализации.

Каждая строка рабочей представляемой таблицы порождается только тогда, когда курсор позиционируется на эту строку.

Рабочая базовая таблица создается при открытии курсора и уничтожается при закрытии курсора.

4.13 Операторы

() определяет операцию над базой данных или операцию над курсором. () читает значения из таблицы. () заносит строки в таблицу. () или () изменяет значения строк таблицы. () или () удаляет строки из таблицы.

4.14 Синтаксис встраивания

() ( (), (), () или ()) - это прикладная программа, которая содержит текст на языке программирования и текст на языке SQL. Текст на языке программирования должен удовлетворять требованиям конкретного стандарта языка программирования. Текст на языке SQL должен состоять из одного или более () и (необязательно) из одной или более (). Это позволяет представлять приложения базы данных в гибридной форме, в которой () прямо встроены в прикладную программу. Такая гибридная прикладная программа по определению должна быть эквивалентна стандартной прикладной программе, в которой () заменены на вызовы () SQL в отдельном () SQL.

4.15 Привилегии

Привилегия разрешаетвыполнить данную категорию () над указанной таблицей или представлением на основе указанного ().Допустимыми () являются INSERT, DELETE, SELECT, UPDATE и REFERENCES.

() определяется для каждой () и ().

(), определенный для (), должен отличаться от () любой другой () в той же среде. () для () является "владельцем" всех таблиц и представлений, определенных в этой ().

Таблицы и представления обозначаются (

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

Если ссылка на (

) не содержит явно (), то по умолчанию указывается () содержащих () или ().

() для () обладает всеми привилегиями по отношению к таблицам и представлениям, определенным в этой ().

() с данным () может содержать (), которые передают привилегии другим (). Переданные привилегии могут относиться к таблицам и представлениям, определенным в текущей (), или могут быть привилегиями, которые были переданы данному () другой (). Раздел WITH GRANT OPTION () определяет, может ли получатель привилегии передавать ее другим.

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

4.16 Транзакции

Транзакция есть последовательность операций, включающая операции над базой данных, атомарная по отношению к восстановлению и асинхронности. Транзакция начинается, когда вызывается процедура и никакая транзакция в данный момент не активна. Транзакция заканчивается при выполнении () или (). Если транзакция завершается выполнением (), все изменения, внесенные в базу данных этой транзакцией делаются доступными для всех асинхронно выполняемых транзакций. Если транзакция завершается выполнением (), все изменения, внесенные в базу данных этой транзакцией, аннулируются. Зафиксированные изменения не могут быть аннулированы. Изменения, внесенные в базу данных транзакцией, могут восприниматься этой транзакцией, но до тех пор, пока транзакция не завершится выполнением (), они не могут восприниматься другими транзакциями.

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

Выполнение () внутри транзакции не оказывает никаких воздействий на базу данных кроме тех, которые установлены Общими правилами для этого ().

Из этого совместно с гарантированным сериализуемым выполнением транзакций следует воспроизводимость всех операций чтения внутри транзакции, если не учитывать следующего:

Влияния изменений базы данных и ее содержимого, явно производимых самой транзакцией.

Влияния изменений значений параметров, поставляемых процедурам, которые открывают курсоры, на последующие выборки через эти курсоры.

Характеристики

Тип файла
Документ
Размер
139,52 Kb
Тип материала
Учебное заведение
Неизвестно

Список файлов доклада

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6384
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее