Реферат: Некоторые черты SQL/ 92 и SQL-3 - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Некоторые черты SQL/ 92 и SQL-3

Банк рефератов / Программирование

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Архив Zip, 20 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникального реферата

Узнайте стоимость написания уникальной работы

Некоторые черты SQL/92 и SQL-3 Оператор выделени я памяти под дескри птор ::= ALLOCATE DESCRIPTOR [WITH MAX ] ::= ::= (] ::= GLOBAL | LOCAL ::= ( ( Комментарий : Дескриптор , это динамически выделяемая час ть памяти прикладной программы , служащая для принятия информации о резуль тате или параметрах динамически подготовленного оператор а SQL или задания параметров такого оператора . Смысл того , что для выделения памяти ис пользуется оператор SQL, а не просто стандартная функция alloc или какая-нибудь другая функция динамического запр о са памяти , состои т в том , что прикладная программа не з нает структуры дескриптора и даже его адр еса . Это позволяет не привязывать SQL к особе нностям какой-либо системы программирования или ОС . Все обмены информацией между собственно прикладной программой и дескрипторами производятся также с помощью специальных операторов SQL (GET и SET, см . ниже ). Второй вопрос : зачем вообще выделять п амять под дескрипторы динамически . Это нужно потому , что в общем случае прикладная программа , использующая динамический SQL , не знает в статике число одновременно действу ющих динамических операторов SQL, описание которых может потребоваться . С этим же связано то , что имя дескриптора может задаваться к ак литеральной строкой символов , так и чер ез строковую переменную включающег о я зыка , т.е . его можно генерировать во время выполнения программы . В операторе ALLOCATE DESCRIPTOR, помимо прочего , может указываться число описательных элементов , на которое он рассчитан . Если , например , при выделении памяти под дескриптор в разделе WITH MAX указано целое положительное число N, а потом дескриптор используется для описания M (M>N) элементов (например , M столбцов результата за проса ), то это приводит к возникновению ис ключительной ситуации. Оператор освобожд ения памяти из-под дескриптора ::= DEALLOCATE DESCRIPTOR Комментарий : Выполнение этого оператора приводит к освобождению памяти из-под ранее выделенного дескриптора . После этого использование имени дескриптора незаконно в любом операт оре , кроме ALLOCATE DESCRIPTOR. Оператор получени я информации из области дескриптора SQL ::= GET DESCRIPTOR ::= ( VALUE ( ...] ::= COUNT ::= ::= ::= ::= ::= TYPE ( LENGHT ( OCTET_LENGHT ( RETURNED_LENG HT ( RETURNED_OCTET_LENGHT ( PRECISION ( SCALE ( DATETIME_INTERVAL_CODE ( DATATIME_INTERVAL_PRECISION ( NULLABLE ( INDICATOR ( DATA ( NAME ( UNNAMED ( COLLATION_CATALOG ( COLLATION_SCHEMA ( COLLATION_NAME ( CHARACTER_SET_CATALOG ( CHARACTER_ SET_SCHEMA ( CHARACTER_SET_NAME ::= ( Комментарий : Оператор GET DESCRIPTOR служит для выборки описательн ой информации , ранее размещенной в дескриптор е с помощью оператора DESCRIBE. За одно выпо лнение оператора можно получить либо число заполненных элементов дескриптора (COUNT), либо инфор мацию , содержащуюся в одном из заполненных элементов . Оператор установк и дескриптора ::= SET DESCRIPTOR < descriptor name> ::= ( VALUE [ ...] ::= COUNT < set item information> ::= ::= ::= ::= Комментарий : Оператор SET DESCRIPTOR служит для заполнения элемент ов дескриптора с целью его использования в разделе USING. За одно выполнение оператора можно поместить значение в поле COUNT (число з аполненных элементов ), либо ча стично или полностью сформировать один элемент дескриптор а . Оператор подготовки ::= PREPARE FROM ::= :: = | | | | ::= | | | | | | ::= ::= ::= ::= ::= ::= | ::= [scope option] ::= [] [] ::= FOR READ ONLY | UPDATE [ OF ] ::= | ::= SELECT [] ::= DISTINCT | ALL Комментарий : Оператор PREPARE вызывает компиляцию и построен ие плана выполнения заданного в текстовой форме оператора SQL. После успешного выполнения оператора PREPARE с подготовленным оператором с вязывается указанное (литерально или косвенно ) имя этого оператора , которое потом может быть использовано в операторах DESCRIBE, EXECUTE, OPEN CURSOR, ALLOCATE CURSOR и DEALLOCATE PREPARE. Эта связь сохраняется до явного выполне ния оператора D EALLOCATE PREPARE. Оператор отказа от подготовленного оператора ::= DEALLOCATE PREPARE Комментарий : Выполнение этого оператора приводит к тому , что ранее подготовленный оператор SQL, связ анный с ука занным именем оператора , ли квидируется , и , соответственно , имя оператора с тановится неопределенным . Если подготовленный опе ратор являлся оператором выборки , и к моме нту выполнения оператора DEALLOCATE существовал открытый курсор , связанный с именем подгот о вленного оператора , то оператор DEALLOCATE возвращ ает код ошибки . Если же для подготовленног о оператора выборки существовал неоткрытый ку рсор , образованный с помощью оператора ALLOCATE CURSOR, то этот курсор ликвидируется . Если курсор об ъявлялся операторо м DECLARE CURSOR, то такой курс ор переходит в состояние , существовавшее до выполнения оператора PREPARE. Если с курсором был связан подготовленный оператор (динамический DELETE или UPDATE), то для этих операторов выполняется неявный оператор DEALLOCATE. Оп ератор з апроса описания подготовленного оператора ::= | ::= DESCRIBE INPUT ::= DESCRIBE [OUTPUT] ::= | ::= USING | INTO [ ...] ::= ::= USING | INTO SQL DESCRIPTOR ::= | ::= [] ::= [INDICATOR] ::= [] ::= [INDICATOR] Комментарий : При выполнении оператора DESCRIBE происходит зап олнение ук азанного в операторе дескриптор а информацией , описывающей либо результат ран ее подготовленного оператора SQL (если это опера тор выборки ), либо количество и типы парам етров подготовленного оператора . В здесь полагается писать USING SQL D E SCRIPTOR. Оператор выполнен ия подготовленного оператора ::= EXECUTE (] (] ::= ::= Комме нтарий : Оператор EXECUTE может быть применен к любом у ранее подготовленному оператору SQL, кроме . Если это оператор , то оператор EXECUTE должен содержать раздел с ключев ым словом INTO. В любом случае число фактичес ких параметров , задаваемых через разделы using, дол жно соответствовать числу формальных параметров , определенных в подготовленном операторе SQL. Оператор подготов ки с немедленным выполнением ::= EXECUTE IMMEDIATE Комментарий : При выполнении оператора EXECUTE IMMEDIATE производится подготовка и немедленное выполнение заданного в текстовой форме оператора SQL. При этом подготавливаемый оператор не должен бы т ь оператором выборки , не должен содержать формальных параметров и комментариев. Оператор объявлен ия курсора над динамически подготовленным опе ратором выборки ::= DECLARE [INSENSITIVE] [SCROLL] CURSOR FOR Комментарий : Как определяется в новом стан дарте , для всех операторов DECLARE CURSOR, курсоры фактич ески создаются при начале транзакции и ун ичтожаются при ее завершении . Заметим , что в этом операторе и - прямо зад а нные идентификаторы . Оператор определе ния курсора над динамически подготовленным оп ератором выборки ::= ALLOCATE [INSENSITIVE] [SCROLL] CURSOR FOR ::= (] Комментарий : Курсоры , определяемые с помощью оператора ALLOCATE CURSOR, фактически создаются при выполнении так ого оператора и уничтожаются при выполнении оператора DEALLOCATE PREPA RE или при завершении тра нзакции . В этом операторе имена курсора и подготовленного оператора SQL могут задаваться не только в литеральной форме , но и че рез переменные . относится к области видимости имен : в пределах текущего модуля или в пред елах текущей сессии. Оператор открытия курсора , связанного с динамически подготовле нным оператором выборки ::= OPEN [] Комментарий : По сути , оператор открытия курсора , свя занного с динамическ и подготовленным опер атором SQL, отличается от статического случая то лько возможным наличием раздела using, в котором задаются фактические параметры оператора выбор ки . Кроме того , имя курсора может задавать ся через переменную . Оператор чтения строки по ку рсору , связанному с дина мически подготовленным оператором выборки ::= FETCH [[] FROM] Комментарий : По сути , оператор чтения по курсору , связанному с динамически подгото вленным оператором SQL, отличается от статического случая только возможным наличием раздела using, в ко тором задается размещение значений текущей ст роки результирующей таблицы . Кроме того , имя курсора может задаваться через переменную. Оператор закрытия ку рсора , связанного с динамически под готовленным оператором выборки ::= CLOSE Комментарий : По сути , оператор закрытия курсора , свя занного с динамически подготовленным оператором SQL, отличается от статическ ого случая т олько тем , что имя курсора может задаватьс я через переменную Оператор позицион ного удаления по курсору , связанному с дин амически подготовленным оператором выборки ::= DELETE FROM
WHERE C URRENT OF Комментарий : По сути , оператор позиционного удаления по курсору , связанному с динамически подгот овленным оператором SQL, отличается от статического случая только тем , что имя курсора мо жет задаваться через переменную . Опер атор п озиционной модификации по курсору , связанному с динамически подготовленным оператором выборки ::= UPDATE
SET [ ...] WHERE CURRENT OF Комментарий : По сути , оператор позиционной модификации по курсору , связанному с динамически подг отовленным оператором SQL, отличается от статическог о случая только тем , что имя курсора м ожет задаваться через переменную. Подготавливаемый оператор позиционн ого удаления ::= DELETE [FROM
] WHERE CURRENT OF Комментарий : Основной смысл появления этого и следу ющего операторов состоит в том , что сочета ние курсора , определенного на д инамически подготовленном операторе выборки , и статичес ки задаваемых операторов удаления и модификац ии по этому курсору , выглядит довольно нел епо . Поэтому в стандарте появились динамическ и подготавливаемые позиционные операторы удалени я и вставки . Естеств е нно , что вы полняться они должны с помощью оператора EXECUTE. Подготавливаемый оператор позиционной модификации ::= UPDATE [
] SET [ ...] WHERE CURRENT O F Комментарий : Смотри предыдущий пункт . Если внимательно сравнивать средства дина мического SQL СУБД Oracle V.6 и стандарта SQL/92, то видно , что Oracle практически вкладывается в стандарт , если не считать небольших синтаксических разл ичий и (что существенно более важно ) р азного стиля работы с дескрипторами . Думается , что примерно такая же ситуация имеет место в других СУБД , поддерживающих динамич еский SQL. Сводка новых в озможностей SQL-3 В стандарте SQL/92 по сравнению со стандартом SQL/89 я зык был расширен главны м образом количественно , хотя даже этих ко личественных расширений оказалось достаточно для того , чтобы стандарт SQL/92 не удалось полност ью реализовать до сих пор в большинстве коммерческих СУБД . Поскольку SQL/92 не удовлетворял зна ч ительной части претензий , исто рически предъявляемых к языку SQL, был сформиров ан новый комитет , который должен выработать стандарт языка с качественными расширениями . Язык SQL-3 пока не сформирован полностью , многи е аспекты продолжают обсуждаться . Поэтому к приводимой здесь сводке возможностей нужно относиться как к сугубо предваритель ной . 17.19.1. Типы данны х Набор встроенных типов данных предполагается расширить типами BOOLEAN и ENUMERATED. Хотя по причине поддержки неопределенных значений языку SQL свой ственно применение трехзначной логики , тип BOOLEAN содержит только два возможных значения true и false. Для представления значения unknown рекомендуется использовать NULL, что , конечно , не вполне естественно . Перечисляемый тип ENUMERATED облада ет свойства м и , подобными свойствам перечисляемых типов в языках программирования . Расширены возможности работы с неопределе нными значениями . Появился новый оператор CREATE NULL CLASS, позволяющий ввести именованный набор именов анных неопределенных значений . При опред ел ении домена можно явно указать имя класса неопределенных значений , появление которых д опустимо в столбцах , связанных с этим доме ном . Смысл каждого неопределенного значения и нтерпретируется на уровне пользователей . Предполагается включение в язык возможн ости использования определенных пользователям и типов данных . Видимо , будут иметься возм ожности определения абстрактных типов данных с произвольно сложной внутренней структурой н а основе таких традиционных возможностей агре гирования и структуризации как LI S T, ARRAY, SET, MULTISET и TUPLE, а также возможности определения объ ектных типов с соответствующими методами в стиле объектно-ориентированного подхода . Появляется возможность использования принципо в наследования свойств существующей таблицы ( супертаблицы ) при определении новой таблиц ы (подтаблицы ). Подтаблица наследует от суперта блицы все определения столбцов и первичного ключа . Другая возможность - создать таблицу , "подобную " существующей в том смысле , что в новой таблице наследуются определения не которы х столбцов существующей таблицы . 17.19.2. Некоторые другие свойства SQL-3 Одной из проблем реализации я зыка SQL всегда являлась проблема распознавания "изменяемости " соединений . Как известно , если п редставление включает соединение общего вида , то теоретиче ски невозможно определить , мож но ли однозначно интерпретировать операции об новления такого представления . Однако существует несколько важных классов соединений , которые заведомо являются изменяемыми . В SQL-3 предполага ется выделить эти классы с помощью сп е циальных синтаксических конструкций . Наконец-то появляется возможность определения триггеров как комбинации спецификаций событи я и действия . Действие определяется как SQL-п роцедура , в которой могут использоваться как операторы SQL, так и ряд управляющих к онструкций . На самом деле , этот механиз м очень близок к тому , который реализован в Oracle V.7. Что касается управления транзакциями , то происходит возврат к старой идее System R о в озможности установки внутри транзакции точек сохранения (savepoints). В оп ераторе ROLLBACK можно указать идентификатор ранее установленной точки сохр анения , и тогда будет произведен откат тра нзакции не к ее началу , а к этой т очке сохранения . Как видно , можно ожидать наличия в SQL-3 многих интересных и полезных возможностей . О дн ако даже промежуточные проекты стандарт а включают почти в два раза больше ст раниц , чем стандарт SQL/92. Поэтому трудно ожидать быстрой реализации этого стандарта после его принятия (а многие вообще сомневаются , что этот стандарт будет когда-либо реализов а н ).
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Про ребёнка: Лёва научился виртуозно пользоваться скайпом, находит приложения в iPhone, открывает, выбирает нужную ему бабушку, нажимает на чат с бабушкой, нажимает кнопку звонка в правом верхнем углу, активирует видеозвонок, звонит, но тут-то и начинаются проблемы - говорить Лёва по-прежнему не умеет...
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, реферат по программированию "Некоторые черты SQL/ 92 и SQL-3", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru