Общие сведения о Transact-SQL Лекция 3. Базы данных на основе Microsoft SQL Server 2008. Лекция 3 2 План лекции Типы данных Переменные в Transact-SQL.

Презентация:



Advertisements
Похожие презентации
Лекция 16 Лекция 16 Основы SQL. Описание отношений, доменов, ограничений целостности, представлений данных. Реализация операций реляционной алгебры в SQL.
Advertisements

1. Определить последовательность проезда перекрестка
Таблица умножения на 8. Разработан: Бычкуновой О.В. г.Красноярск год.

1 Знаток математики Тренажер Таблица умножения 2 класс Школа 21 века ®м®м.
Урок повторения по теме: «Сила». Задание 1 Задание 2.
Фрагмент карты градостроительного зонирования территории города Новосибирска Масштаб 1 : 6000 Приложение 7 к решению Совета депутатов города Новосибирска.
Строки символов Строка в Паскале – упорядоченная последовательность символов. Количество символов в строке называется ее длиной. Длина строки в Паскале.
Фрагмент карты градостроительного зонирования территории города Новосибирска Масштаб 1 : 6000 Приложение 7 к решению Совета депутатов города Новосибирска.
1 Знаток математики Тренажер Таблица умножения 3 класс Школа России Масько Любовь Георгиевна Муниципальное общеобразовательное учреждение средняя общеобразовательная.
Прототип задания В3 Площади фигур. Задание 1 Задание 2.
Набор игр Создание игровых ситуаций на уроках математики повышает интерес к математике, вносит разнообразие и эмоциональную окраску в учебную работу, снимает.
ОДНОМЕРНЫЕ МАССИВЫ. РАБОТА С ЭЛЕМЕНТАМИ СТРУКТУРИРОВАННЫЕ ТИПЫ ДАННЫХ.
Развивающая викторина для детей "Самый-самый " Муниципальное общеобразовательное учреждение средняя общеобразовательная школа 7 ст. Беломечётской.
П РОТОТИП ЗАДАНИЯ В3 В МАТЕРИАЛАХ ЕГЭ Площади фигур.
Математический диктант 1 вариант 2 вариант 1. Представьте каждое из данных выражений в виде алгебраической суммы: а) – 12 – 7 а) – 13 – 5 б) – б)
БИТЕК «Бизнес-инжиниринговые технологии» г. Москва, тел.: (495) , Internet: Учебный.

Лекция 2 Раздел 2.1 Windows Phone Темы раздела 3.
Разработал: Учитель химии, биологии высшей квалификационной категории Баженов Алексей Анатольевич.
Транксрипт:

Общие сведения о Transact-SQL Лекция 3

Базы данных на основе Microsoft SQL Server Лекция 3 2 План лекции Типы данных Переменные в Transact-SQL Управляющие конструкции Transact-SQL Функции Transact-SQL

Базы данных на основе Microsoft SQL Server Лекция 3 3 Типы данных

MS SQL Server поддерживает все основные простые типы данных, используемые в современных языках программирования В версии MS SQL Server 2008 были добавлены несколько новых типов, а некоторые перестали рекомендоваться к использованию Базы данных на основе Microsoft SQL Server Лекция 3 4

Типы данных 1. Целые числа: Bit (1 байт) один бит Bigint (8 байт) диапазон [– –1] Int (4 байта) диапазон [– ] Базы данных на основе Microsoft SQL Server Лекция 3 5

Типы данных 1. Целые числа: SmallInt (2 байта) диапазон [– ] TinyInt (1 байт) диапазон [ ] Базы данных на основе Microsoft SQL Server Лекция 3 6

Типы данных 2. Числа с фиксированной запятой: Decimal или Numeric диапазон [–10 38 – –1] Money (8 байт) – денежный формат диапазон [– ] SmallMoney (4 байта) – денежный формат диапазон [–214748, ,3647] Базы данных на основе Microsoft SQL Server Лекция 3 7

Типы данных 3. Числа с плавающей запятой: Float диапазон [–1,79E ,79E + 308] Базы данных на основе Microsoft SQL Server Лекция 3 8

Типы данных 4. Дата и время: DateTime (8 байт) диапазон [ г г.] точность до трех сотых секунды DateTime2 (6-8 байт) новый тип данных точность до 0,1 миллисекунды Базы данных на основе Microsoft SQL Server Лекция 3 9

Типы данных 4. Дата и время: SmallDateTime (4 байта) диапазон [ г ] точность одна минута DateTimeOffset (8-10 байт) Аналогичен типу DateTime, но хранит ещё сдвиг относительно времени UTC Базы данных на основе Microsoft SQL Server Лекция 3 10

Типы данных 4. Дата и время: Date (3 байта) хранит только дату диапазон [ г г.] Time (3-5 байт) хранит только время точность до 0,1 миллисекунды Базы данных на основе Microsoft SQL Server Лекция 3 11

Типы данных 5. Символьные строки: Char – строка фиксированной длины Максимальная длина строки 8000 символов VarChar – строка переменной длины Максимальная длина строки 8000, но при использовании ключевого слова max может хранить до 2 31 байт Базы данных на основе Microsoft SQL Server Лекция 3 12

Типы данных 5. Символьные строки: Text – применялся для хранения больших строк, сейчас рекомендуется использование varchar(max) Оставлен для обратной совместимости. Nchar – строка фиксированной длины в Юникоде максимальная длина строки 4000 символов Базы данных на основе Microsoft SQL Server Лекция 3 13

Типы данных 5. Символьные строки: NvarChar – строка переменной длины в Юникоде Максимальная длина строки 4000 символов, но при использовании ключевого слова max может хранить до 2 31 байт. Ntext – аналогичен типу text, но предназначен для работы с Юникод Базы данных на основе Microsoft SQL Server Лекция 3 14

Типы данных 6. Двоичные данные: Binary – позволяет хранить двоичные данные размером до 8000 байт VarBinary – тип данных переменной длины, позволяет хранить до 8000 байт, но при использовании ключевого словаmax до 2 31 байт Базы данных на основе Microsoft SQL Server Лекция 3 15

Типы данных 6. Двоичные данные: Image – использовался для хранения больших объемов данных, сейчас рекомендуется использовать varbinary(max) Оставлен для обратной совместимости Базы данных на основе Microsoft SQL Server Лекция 3 16

Типы данных 7. Прочие типы данных: Table – особый тип данных, используемый в основном для временного хранения таблиц и для передачи в качестве параметра в функции HierarchyID – используется для представления положения в иерархической структуре Базы данных на основе Microsoft SQL Server Лекция 3 17

Типы данных 7. Прочие типы данных: Sql_variant – тип данных, хранящий значения различных типов данных, поддерживаемых MS SQL Server. XML – позволяет хранить XML-данные Базы данных на основе Microsoft SQL Server Лекция 3 18

Типы данных 7. Прочие типы данных: Cursor (1 байт) – тип данных для переменных или выходных параметров хранимых процедур, которые содержат ссылку на курсор Базы данных на основе Microsoft SQL Server Лекция 3 19

Типы данных 7. Прочие типы данных: Timestamp/ rowversion (8 байт) – это тип данных, который представляет собой автоматически сформированные уникальные двоичные числа в БД Значение данного типа генерируется БД автоматически при вставке или изменении записи Базы данных на основе Microsoft SQL Server Лекция 3 20

Типы данных 7. Прочие типы данных: UniqueIdentifier (16 байт) – представляет собой GUID (Special Globally Unique Identifier) Гарантируется уникальность данного значения Базы данных на основе Microsoft SQL Server Лекция 3 21

Переменные в Transact-SQL Базы данных на основе Microsoft SQL Server Лекция 3 22

Переменные в Transact-SQL Любой объект базы данных должен обладать уникальным именем внутри этой базы Имена объектов называются идентификаторами Базы данных на основе Microsoft SQL Server Лекция 3 23

Переменные в Transact-SQL Правила именования объектов: первый символ: A-Z, #, _ длина имени не более 128 символов, (для временных объектов – 116) внутри имени запрещаются пробелы, скобок и символы: ~, !, %, ^, & Базы данных на основе Microsoft SQL Server Лекция 3 24

Переменные в Transact-SQL Правила именования объектов: имя объекта не должно совпадать с зарезервированным словом и с именем уже существующего объекта если имя объекта содержит пробелы или совпадает с зарезервированным словом, то его необходимо поместить внутрь квадратных скобок [ ] Базы данных на основе Microsoft SQL Server Лекция 3 25

Переменные в Transact-SQL Имена локальных переменных должны удовлетворять правилам именования объектов и всегда должны начинаться с Область действия переменной ограничена пакетом операторов или процедурой, в которой она была объявлена Базы данных на основе Microsoft SQL Server Лекция 3 26

Переменные в Transact-SQL Объявление переменной Переменной Тип Данных[,…n] Базы данных на основе Microsoft SQL Server Лекция 3 27

Переменные в Transact-SQL Пример объявления одной переменной: int Пример объявления нескольких переменных: float Базы данных на основе Microsoft SQL Server Лекция 3 28

Переменные в Transact-SQL Присвоение значения Переменной = Выражение Пример: = 0 Базы данных на основе Microsoft SQL Server Лекция 3 29

Переменные в Transact-SQL В версии MS SQL Server 2008 появились следующие нововведения: Инициализировать переменную стало можно сразу при объявлении: int = 0 Появились операторы +=, –=, *=, /= для краткой формы записи арифметических конструкций Базы данных на основе Microsoft SQL Server Лекция 3 30

Управляющие конструкции Transact-SQL Базы данных на основе Microsoft SQL Server Лекция 3 31

Управляющие конструкции Transact-SQL Группировка двух и более команд в единый блок осуществляется с помощью конструкции: BEGIN … END Базы данных на основе Microsoft SQL Server Лекция 3 32

Управляющие конструкции Transact-SQL Конструкция ветвления IF условие Оператор [ELSE Оператор ] Базы данных на основе Microsoft SQL Server Лекция 3 33

Управляющие конструкции Transact-SQL Конструкция выбора CASE 1. CASE WHEN THEN [...n] [ELSE ] END Базы данных на основе Microsoft SQL Server Лекция 3 34

Управляющие конструкции Transact-SQL Конструкция выбора CASE 2. CASE WHEN THEN [...n] [ELSE ] END Базы данных на основе Microsoft SQL Server Лекция 3 35

Управляющие конструкции Transact-SQL Циклическая конструкция WHILE условие Оператор [BREAK | CONTINUE] Базы данных на основе Microsoft SQL Server Лекция 3 36

Управляющие конструкции Transact-SQL Конструкция WAITFOR откладывает выполнение команды WAITFOR DELAY | TIME Базы данных на основе Microsoft SQL Server Лекция 3 37

Управляющие конструкции Transact-SQL Обработка исключительных ситуаций BEGIN TRY { } END TRY BEGIN CATCH { } END CATCH [ ; ] Базы данных на основе Microsoft SQL Server Лекция 3 38

Управляющие конструкции Transact-SQL Уровни ошибок: 1–10: информационные сообщения функция 11–19: относительно серьезные ошибки 20–25: очень серьезные ошибки ошибки на уровне системы разрывают текущее соединение Базы данных на основе Microsoft SQL Server Лекция 3 39

Управляющие конструкции Transact-SQL Комментарии: однострочные – в этом случае игнорируется текст справа от символов комментария: -- (двойной дефис) многострочные – игнорируется текст, записанный между двумя парами символов: /* … */ Базы данных на основе Microsoft SQL Server Лекция 3 40

Функции Transact-SQL Базы данных на основе Microsoft SQL Server Лекция 3 41

Функции Transact-SQL Встроенные функции MS SQL Server: функции наборов записей агрегатные функции скалярные функции Базы данных на основе Microsoft SQL Server Лекция 3 42

Функции Transact-SQL Типы скалярных функций: математические функции строковые функции функции для работы с датами конфигурационные функции системные функции Базы данных на основе Microsoft SQL Server Лекция 3 43

Функции Transact-SQL Математические функции: Abs (выражение) – модуль выражения IsNumeric (выражение) – проверка, имеет ли указанное выражение числовой тип данных Rand () – возвращает случайное значение на основе системного времени в диапазоне от 0 до 1 Базы данных на основе Microsoft SQL Server Лекция 3 44

Функции Transact-SQL Математические функции: Floor (выражение) – округление указанного значения до ближайшего минимального целого числа Ceiling (выражение) – возвращает ближайшее целое число, большее или равное данному Базы данных на основе Microsoft SQL Server Лекция 3 45

Функции Transact-SQL Математические функции: Power (выражение, степень) – возведение в степень выражения Sqrt (выражение) – вычисляет квадратный корень Базы данных на основе Microsoft SQL Server Лекция 3 46

Функции Transact-SQL Строковые функции: Ascii (строка) – возвращает ASCII-код самого левого символа строки Char (выражение) – возвращает символ, ASCII-код которого соответствует указанному числовому выражению Базы данных на основе Microsoft SQL Server Лекция 3 47

Функции Transact-SQL Строковые функции: Len (строка) – вычисляет длину строки в символах LTrim (строка), RTrim (строка) – удаляет начальные и концевые пробелы соответственно Базы данных на основе Microsoft SQL Server Лекция 3 48

Функции Transact-SQL Строковые функции: Left (строка, число), Right (строка, число) – возвращает указанное количество символов строки, начиная с левого и правого края строки соответственно Базы данных на основе Microsoft SQL Server Лекция 3 49

Функции Transact-SQL Строковые функции: SubString (строка, начало, длина) – возвращает для строки подстроку указанной длины, начиная с указанного символа Базы данных на основе Microsoft SQL Server Лекция 3 50

Функции Transact-SQL Строковые функции: CharIndex (строка 1, строка 2 [, старт]) – поиск подстроки строка 1 в строке строка 2 Возвращает порядковый номер первого символа, с которого начинается первое вхождение подстроки в строку Базы данных на основе Microsoft SQL Server Лекция 3 51

Функции Transact-SQL Строковые функции: Stuff (строка 1, начало, длина, строка 2) – удаляет определенное количество символов строки, начиная с указанного, и заменяет их новой подстрокой Базы данных на основе Microsoft SQL Server Лекция 3 52

Функции Transact-SQL Строковые функции: Replace (строка 1, строка 2, строка 3) – заменяет все вхождения строки строка 2 в исходной строке строка 1 на строка 3 Базы данных на основе Microsoft SQL Server Лекция 3 53

Функции Transact-SQL Строковые функции: Reverse (строка) – возвращает строку, символы которой записаны в обратном порядке по отношению к исходной строке Базы данных на основе Microsoft SQL Server Лекция 3 54

Функции Transact-SQL Функции для работы с датами: GetDate () – возвращает текущее системное время IsDate (выражение) – проверяет правильность выражения на соответствие одному из возможных форматов ввода даты Базы данных на основе Microsoft SQL Server Лекция 3 55

Функции Transact-SQL Функции для работы с датами: Day (дата), Month(дата), Year(дата) – возвращают день, месяц и год из указанной даты Базы данных на основе Microsoft SQL Server Лекция 3 56

Функции Transact-SQL Функции для работы с датами: DateName (тип, дата) – выделяет из даты указанную в типе часть и возвращает ее в символьном формате: yy или yyyy – год, qq или q – квартал, mm или m – месяц, dd или d – день, wk или ww – неделя, hh – час, mi или m – минута, ss или s – секунда, ms – миллисекунда Базы данных на основе Microsoft SQL Server Лекция 3 57

Функции Transact-SQL Функции для работы с датами: DatePart (тип, дата) – выделяет из даты указанную часть и возвращает ее в числовом формате. DateAdd (тип, число, дата) – добавляет к указанной дате число, тип которого указан в первом параметре Базы данных на основе Microsoft SQL Server Лекция 3 58

Функции Transact-SQL Функции для работы с датами: DateDiff (тип, начало, окончание) – возвращает разницу между указанными частями дат в указанном типе Базы данных на основе Microsoft SQL Server Лекция 3 59

Функции Transact-SQL Конфигурационные функции: – возвращает информацию о дате, версии и типе процессора сервера – символьное имя локального SQL-Server Базы данных на основе Microsoft SQL Server Лекция 3 60

Функции Transact-SQL Конфигурационные функции: – максимально разрешенное количество одновременных подключений к серверу Базы данных на основе Microsoft SQL Server Лекция 3 61

Функции Transact-SQL Системные функции: DataLength(выражение) – возвращает число, соответствующее количеству байт, необходимых для хранения результата выражения – код последней ошибки, произошедшей в текущем соединении. Если ошибок нет, результат 0 Базы данных на основе Microsoft SQL Server Лекция 3 62

Функции Transact-SQL Системные функции: Host_Name() – символьное имя компьютера в сети, на котором выполняется команда Базы данных на основе Microsoft SQL Server Лекция 3 63

Функции Transact-SQL Системные функции: System_User и Session_User – возвращают соответственно имя учетной записи пользователя для входа и имя пользователя текущей базы данных Базы данных на основе Microsoft SQL Server Лекция 3 64

Функции Transact-SQL Системные функции: – определяет количество миллисекунд, прошедшее со времени последнего запуска SQL-Server NewID() – генерирует новое значение типа UniqueIdentifier Базы данных на основе Microsoft SQL Server Лекция 3 65

Функции Transact-SQL Системные функции: Permission ([ObjectID[, column]]) – возвращает информацию о правах доступа для текущего пользователя Аргумент ObjectID указывает идентификационный номер объекта базы данных Для получения идентификационного номера объекта по его имени используется функция Object_ID(имя) Базы данных на основе Microsoft SQL Server Лекция 3 66