КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Компоненты SQL
w DML (Data Manipulation Language) язык манипулирования данными w DDL (Data Definition Language) язык определения данных w DCL (Data Control Language) язык управления данными w CREATE TABLE ИмяТаблицы ( w { Имя поля таблицы Тип данных [(размер)][(ограничение)…].,…} w { [, CONSTRAINT ограничения таблицы] } w …); Условные обозначения: | - все, что предшествует символу, можно заменить тем, что следует за ним; { } - единое целое для применения символа; [ ] - необязательное выражение; … - повторяется произвольное число раз; .,… - повторяется произвольное число раз, но любое вхождение отделяется запятой. Пример создания простой таблицы без ограничений: CREATE TABLE Студент ( НомерЗачКнижки INTEGER, Фамилия CHAR (15), Имя CHAR (10), Отчество CHAR (15), ДатаРождения Date, Специальность CHAR (15), Примечание TEXT ); Определение первичного ключа в таблице: CREATE TABLE Студент ( НомерЗачКнижки INTEGER PRIMARY KEY NOT NULL, Фамилия CHAR (15), Имя CHAR (10), Отчество CHAR (15), ДатаРождения Date, Специальность CHAR (15), Примечание TEXT ); Структура таблицы с составным первичным ключом: CREATE TABLE Студент ( Фамилия CHAR (15), Имя CHAR (10), Отчество CHAR (15), ДатаРождения Date, Специальность CHAR (15), Примечание TEXT, CONSTRAINT PRIMARY KEY (Фамилия, Имя, Отчество) ); Описание примера на языке SQL: CREATE TABLE Контакты ( КодКонтакта INTEGER PRIMARY KEY NOT NULL, Имя VARCHAR (10), Фамилия VARCHAR (15), Обращение VARCHAR (10), Адрес VARCHAR (30)); CREATE TABLE Звонки ( КодЗвонка INTEGER PRIMARY KEY NOT NULL, КодКонтакта INTEGER NOT NULL, ДатаЗвонка DATE, Описание TEXT, CONSTRAINT FK1 FOREIGN KEY (КодКонтакта) REFERENCES Контакты (КодКонтакта));
4) ВОПРОС: Типы данных в SQL. ОТВЕТ:
Типы данных: w Строковый (символьный) w Числовой w Логический w Даты-времени w Интервальный Строковый тип данных: w CHARACTER или CHAR (n) w CHARACTER VARYING или VARCHAR (n) w TEXT Числовые типы данных: q Точные числовые типы: ü INTEGER ü SMALLINT ü BIGINT ü NUMERIC ü DECIMAL
Числовые типы данных: q Приблизительные числовые типы: ü REAL ü DOUBLE PRECISION ü FLOAT Логический (булевский): w BOOLEAN Даты-времени: w DATE w TIME WITHOUT TIME ZONE w TIME WITH TIME ZONE w TIMESTAMP WITHOUT TIME ZONE w TIMESTAMP WITH TIME ZONE Интервалы: Интервал представляет собой разность между двумя значениями типа дата-время SQL поддерживает два типа интервалов: w Год-месяц (количество лет и месяцев между двумя датами) w День-время (количество дней, часов, минут и секунд между двумя моментами в пределах одного месяца) Особые типы данных: w ROW w ARRAY w MULTISET
5) ВОПРОС: Запросы. Назначение запросов. ОТВЕТ: Определение: В результате выполнения запроса создается таблица, которая либо содержит запрашиваемые данные, либо пуста, если данных, соответствующих запросу не нашлось. Эта таблица называется результирующий или результатной и существует только во время работы с БД и не присоединяется к числу ее таблиц. Запросы можно использовать для следующих действий: 1. Просмотра записей таблицы без ее открытия; 2. Объединение на экране данных нескольких таблиц в виде одной таблицы; 3. Просмотра отдельных полей таблицы; 4. Выполнения вычислений над значениями полей. Отличие запросов от фильтров: 1. Фильтры не позволяют добавить еще несколько таблиц, записи которых включаются в возвращаемый набор записей; 2. Фильтры не позволяют указать поля, которые должны отображаться в результате; 3. Фильтр нельзя выделить как отдельный объект БД; 4. Фильтры не позволяет производить вычислений. Виды запросов: На выборку; На изменение; На создание таблицы; С параметрами; С вычисляемыми полями; На управление. Виды запросов: Список всех видов запросов можно увидеть Конструктор (работа с запросами) Ленты, в разделе Тип зпроса. Способы создания запросов: С помощью мастера запросов С помощью конструктора запросов Создание запроса из фильтра Запрос с параметрами: Запросы с параметрами отличаются от других тем, что при выполнении запроса открываются диалоговые окна, предлагающие ввести параметры для условий на отбор записей. Вводимых параметров в одном запросе может быть несколько. Основные SQL-выражения для выборки данных: SELECT СписокСтолбцов FROM СписокТаблиц; Это обязательные SQL-выражения, ни одного из них нельзя пропустить!!! Инструкция SELECT: Сразу за оператором SELECT до списка атрибутов можно применять ключевые слова ALL (все) и DISTINCT (отличающиеся), которые указывают какие записи представить в результирующую таблицу. Если эти ключевые слова не используются, по подразумевается, что следует выбрать все записи, что соответствует применению ALL. В случае использования DISTINCT в результатной таблице представляются только уникальные записи. Использование псевдонимов: Заголовки столбцов в результатной таблице можно переопределить по своему усмотрению, назначив им так называемые псевдономы, для этого служит операнд Например SELECT Client.ClientName AS Клиент, Сlient.Adress AS Адрес FROM Client; Уточнения запросов: WHERE (где) GROUP BY (группировать по) HAVING (имеющие, при условии) ORDER BY (сортировать по) Структура запроса с уточнениями: SELECT СписокСтолбцов FROM ИмяТаблицы WHERE УсловиеПоиска GROUP BY СтолбецГруппировки HAVING УсловиеПоиска ORDER BY УсловиеСортировки Порядок выполнения операторов SQL в запросах: 1. FROM 2. WHERE 3. GROUP BY 4. HAVING 5. SELECT 6. ORDER BY
Оператор WHERE: Предикаты сравнения: (=), (<), (>), (< >), (<=), (>=); BETWEEN; IN, NOT IN; LIKE, NOT LIKE; IS NULL; ALL, SOME, ANY; EXISTS; UNIQUE; DISTINCT, OVERLAPS, MATCH, SIMILAR. Оператор GROUP BY: Служит для группировки записей по значениям одного или нескольких полей. Если в SQL-выражении используется оператор WHERE, то GROUP BY находится и выполняется после него. Оператор HAVING: Обычно применяется совместно с оператором GROUP BY и задает фильтр записей в группах. Если в SQL-выражении оператора GROUP BY нет, то оператор HAVING применяется ко всем записям, возвращаемым оператором WHERE. Оператор ORDER BY: ASC – по возрастанию (ascending); DESC – по убыванию (descending);
6) ВОПРОС:Понятие целостности данных. ОтВЕТ: Выполнение операторов модификации данных в таблицах базы данных INSERT, DELETE и UPDATE может привести к нарушению целостности данных и их корректности, т.е. к потере их достоверности и непротиворечивости. Чтобы информация, хранящаяся в базе данных, была однозначной и непротиворечивой, в реляционной модели устанавливаются некоторые ограничительные условия – правила, определяющие возможные значения данных и обеспечивающие логическую основу для поддержания корректных значений. Ограничения целостности позволяют свести к минимуму ошибки, возникающие при обновлении и обработке данных. В базе данных, построенной на реляционной модели, задается ряд правил целостности, которые, по сути, являются ограничениями для всех допустимых состояний базы данных и гарантируют корректность данных. Рассмотрим следующие типы ограничений целостности данных: · обязательные данные; · ограничения для доменов полей; · корпоративные ограничения; · целостность сущностей; · ссылочная целостность.
Дата добавления: 2015-05-09; Просмотров: 1080; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |