Ответы к экзамену по БД, страница 7

PDF-файл Ответы к экзамену по БД, страница 7 Базы данных (5507): Ответы (шпаргалки) - 7 семестрОтветы к экзамену по БД: Базы данных - PDF, страница 7 (5507) - СтудИзба2015-08-16СтудИзба

Описание файла

PDF-файл из архива "Ответы к экзамену по БД", который расположен в категории "". Всё это находится в предмете "базы данных" из 7 семестр, которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. Архив можно найти в разделе "к экзамену/зачёту", в предмете "базы данных" в общих файлах.

Просмотр PDF-файла онлайн

Текст 7 страницы из PDF

Стандарты SQL, способы его реализации. Структура языка SQL.ВведениеSQL - универсальный компьютерный язык, применяемый для создания, модификации и управленияданными в реляционных базах данных. SQL основывается на реляционной алгебре.SQL является, прежде всего, информационно-логическим языком, предназначенным для описанияхранимых данных, для извлечения хранимых данных и для модификации данных. SQL не является языком программирования.Язык SQL представляет собой совокупность операторов.18.2Стандарты SQLПервый официальный стандарт языка SQL был принят ANSI в 1986 году и ISO (Международной организацией по стандартизации) в 1987 году (так называемый SQL-86) и несколько уточнён в 1989 году.Дальнейшее развитие языка поставщиками СУБД потребовало принятия в 1992 году нового расширенного стандарта (ANSI SQL-92 или просто SQL2).

Следующим стандартом стал SQL:1999 (SQL3). Внастоящее время действует стандарт, принятый в 2003 году (SQL:2003) с небольшими модификациями,внесёнными позже.18.3Структура SQL (операторы)Операторы определения данных (Data Definition Language, DDL)1. CREATE создает объект БД (саму базу, таблицу, представление, пользователя и т.д.)2. ALTER изменяет объект3. DROP удаляет объектОператоры манипуляции данными (Data Manipulation Language, DML)1.2.3.4.SELECT считывает данные, удовлетворяющие заданным условиямINSERT добавляет новые данныеUPDATE изменяет данныеDELETE удаляет данныеОператоры определения доступа к данным (Data Control Language, DCL)1.

GRANT предоставляет пользователю (группе) разрешения на определенные операции с объектом2. REVOKE отзывает ранее выданные разрешения3. DENY задает запрет, имеющий приоритет над разрешениемОператоры управления транзакциями (Transaction Control Language, TCL)1. COMMIT применяет транзакцию.2. ROLLBACK откатывает все изменения, сделанные в контексте текущей транзакции.3. SAVEPOINT делит транзакцию на более мелкие участки.218.4Преимущества и недостаткиПреимущества:1. Независимость от конкретной СУБД2.

Наличие стандартов3. ДекларативностьНедостатки:1.2.3.4.18.5Несоответствие реляционной модели данныхСложностьОтступления от стандартовСложность работы с иерархическими структурамиУровни соответствия стандартуНа текущий момент все усилия по проверке СУБД на соответствие стандарту ложатся на её производителя.До 1996 года вопросами соответствия коммерческих реализаций SQL стандарту занимался в основномНациональный институт стандартов и технологий (NIST), который и устанавливал уровень соответствия стандарту.Впервые понятие «уровня соответствия» было предложено в стандарте SQL-92.

А именно, ANSI иNIST определяли четыре уровня соответствия реализации этому стандарту:1.2.3.4.Entry (базовый)Transitional (переходный)Intermediate (промежуточный)Full (полный)Легко можно понять, что каждый последующий уровень соответствия заведомо подразумевал соответствие предыдущему уровню.

Далее, согласно данной лесенке стандартов любая СУБД, котораясоответствовала уровню Entry, могла заявлять себя как “SQL-92 compliant”, хотя на самом деле переносимость и соответствие стандарту ограничивалось набором возможностей, входящих в этот уровень.Положение изменилось с введением стандарта SQL:1999.

Отныне стандарт приобрёл модульную структуру — основная часть стандарта была вынесена в раздел SQL/Foundation, все остальные были выведены в отдельные модули. Соответственно, остался только один уровень совместимости — Core, что означало поддержку этой основной части. Поддержка остальных возможностей оставлена на усмотрениепроизводителей СУБД. Аналогичное положение имело место и с последующими версиями стандарта.319. Операторы ЯМД в Т-SQL: состав и назначение. Примеры.Язык манипулирования (управления) данными (ЯМД) или Data Manipulation Language (DML) — это семействокомпьютерных языков, используемых в компьютерных программах или пользователями баз данных дляполучения, вставки, удаления или изменения данных в базах данных.Состав и назначениеINSERT — осуществляет вставку строк в таблицуСинтаксисINSERT[INTO][(column_list)][ <OUTPUT Clause> ]{VALUES ( { DEFAULT | NULL | expression } [ ,...n ] ) [ ,...n ]}ПримерINSERT INTO TableVALUES (35, ‘Ivanov’, ‘Ivan’, ‘M’);DELETE — осуществляет удаление строк из таблицыСинтаксисDELETE[ TOP ( expression ) [ PERCENT ] ][ FROM ][ <OUTPUT Clause> ][ FROM <table_source> [ ,...n ] ][ WHERE { <search_condition> }]ПримерDELETE FROM TableWHERE Name != ‘Ivan’;UPDATE — осуществляет изменение данных в таблицеСинтаксисUPDATE { table_alias }SET{ column_name= { expression | DEFAULT | NULL }}[ <OUTPUT Clause> ][ FROM { <table_source> } [ ,...n ] ][ WHERE { <search_condition> ]ПримерUPDATE TableSET Name = ‘Ivan’WHERE Surname LIKE ‘Ivanov’SELECT — осуществляет выборку данных из таблиц по запросу.Синтаксис<SELECT statement> ::=<query_expression>[ ORDER BY { order_by_expression | column_position [ ASC | DESC ] } [ ,...n ] ][ COMPUTE { { AVG | COUNT | MAX | MIN | SUM } (expression )} [ ,...n ][ BY expression [ ,...n ] ]]<query_expression> ::={ <query_specification> | ( <query_expression> ) }[ { UNION [ ALL ] | EXCEPT | INTERSECT }<query_specification> | ( <query_expression> ) [...n ] ]<query_specification> ::=SELECT [ ALL | DISTINCT ]< select_list >[ INTO new_table ][ FROM { <table_source> } [ ,...n ] ][ WHERE <search_condition> ][ <GROUP BY> ][ HAVING < search_condition > ]ПримерSELECT fio, uch_zavedenie, pol, family_status, spec, kat_obucheniya, mp, gp, mo, gokFROM uzbJOIN vuz ON vuz_k = vuz.codJOIN family ON sem_polog_k = family.codJOIN kat_obuch ON kat_obuch_k = kat_obuch.codWHERE kat_obuch_k IN(SELECT codFROM kat_obuchWHERE kat_obucheniya= 'УЧАЩИЙСЯ')AND data_rogden like '%66'AND spec in ('000601','000701','001001','001501','001801')AND gp in ('88', '90')ORDER BY gp, spec, uch_zavedenie20.

Способы определения правил целостности БД в Т-SQL. Задание правилцелостности на уровне домена и таблицы.Самым простым способом поддержки целостности данных является создание правил или контрольныхограничений, причем двух типов:- на уровне поля- на уровне таблицыОграничители это элементарные проверки или условия, которые выполняются для операций вставки имодификации значения столбца.

Если данная проверка не проходит или условие не выполняется, то вставкаили модификация отменяется, а в программу клиента передается ошибка. SQL-серверы, как правило,поддерживают следующие ограничители.• NOT NULL - проверка на непустое значение. NULL - специальное понятие в СУБД, которое означает"пусто".• UNIQUE - проверка на уникальность.• PRIMARY KEY - первичный ключ.

Значение в столбце считается первичным ключом, если оно непустоеи уникально в пределах столбца данной таблицы.SQL-технология позволяет на уровне столбца задавать домены значений, т.е. строго определенные наборыили диапазоны значений, для помещаемых в столбец данных. В частности можно реализовывать ограниченияссылочной целостности и проверки фиксированного условия. Ограничение ссылочной целостности непозволяет значениям из столбца одной таблицы принимать значения кроме как из присутствующих в столбцедругой таблицы. Это делается при помощи ограничителей FOREIGN KEY (внешний ключ) и REFERENCES(указатель ссылки).

Таблица, содержащая FOREIGN KEY, считается родительской таблицей. Таблица,содержащая REFERENCES, считается дочерней таблицей. Внешний ключ и указатель ссылки могут находиться водной таблице, т.е. родительская таблица одновременно является дочерней.• FOREIGN KEY - внешний ключ. Назначает столбец или комбинацию столбцов в текущей (родительской)таблице в качестве внешнего ключа для ссылки из других таблиц.• REFERENCES - указатель ссылки (или родительский ключ). Указывает на столбец (комбинациюстолбцов) в родительской таблице, ограничивающую значения в текущей (дочерней) таблице.CHECK - проверка фиксированного условия. В данном ограничителе явно указывается условие, котороедолжно выполняться для вставляемого или модифицируемого значения в столбце.

Например: check (user in'ALEX','JUSTAS') - в столбце user могут содержаться только значения 'ALEX' и 'JUSTAS', попытка вставкизначения 'SHTIRLITZ' будет интерпретирована как ошибочнаяК одному столбцу можно применять несколько проверочных ограничений. Кроме того, можно применять однопроверочное ограничение к нескольким столбцам. Для этого ограничение нужно создать на уровне таблицы.Например, с помощью проверочного ограничения на несколько столбцов можно подтвердить то, что любаястрока со значением USA в столбце country/region может принимать двухсимвольное значение встолбце state. Это позволяет выполнить проверку сразу нескольких условий из одного выражения.Примерcreate table poss2--ограничения на уровне поля, то есть для каждого конкретного столбца в лоб задаем ограничения(nomer integer check (nomer between 1 and 700000),fio char (40) not null check (fio not like '%.%' or fio not like '%-%'),pol char(1) check (pol like 'M' or pol like 'Ж'),kat_obuch_k char(2) check (kat_obuch_k between '01' and '17'),vuz_k integer check (vuz_k between 128955 and 8199999),gp char(2) check (gp between '00' and '99'),gok char(2) check (gok between '00' and '99'),--ограничения на уровне таблицы, мы тут уже используем не один столбец, а несколькоconstraint kat_obuch_const check((kat_obuch_k in ('01', '02') and(convert (integer, gok) - convert (integer, gp))=1) or(kat_obuch_k='08' and (convert(integer, gok) convert (integer, gp))=4) or(kat_obuch_k in('10', '11') and(convert (integer, gok) - convert (integer, gp)) in (1, 2))))21.

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