|
Лабораторная работа 1 создание баз данных (БД) в microsoft sql server
@@FETCH_STATUS – данная функция определяет признак конца или начала текущего курсора. Функция принимаетодно из следующих значе-ний: 0 – находимся в пределах курсора, не в конце; 1 – попытка выйти за пределы первой записи вверх (в никуда); 2 – попытка выйти за пределы последней записи вниз (в никуда).
27
Пример: DECLARE MyCursor1 SCROLL CURSOR FOR (select * from Authors) DECLARE @i bigint, @s char(20), @d smalldatetime
OPEN MyCursor1 FETCH FIRST FROM MyCursor1 INTO @i, @s, @d WHILE @@FETCH_STATUS = 0
BEGIN FETCH NEXT FROM MyCursor1 INTO @i, @s, @d PRINT @i PRINT @s PRINT @d END CLOSE MyCursor1 DEALLOCATE MyCursor1 --пример создания процедуры с курсором USE TreeView_Version;
GO
IF OBJECT_ID ( 'dbo.sample1', 'P' ) IS NOT NULL
DROP PROCEDURE dbo.sample1;
GO CREATE PROCEDURE dbo.sample1 @cur1 CURSOR VARYING OUTPUT
AS
SET @cur1 = CURSOR
FORWARD_ONLY STATIC FOR
SELECT model_name FROM Models;
OPEN @cur1;
GO
--пример запуска процедуры с курсором
USE TreeView_Version; GO
DECLARE @MyCursor CURSOR; EXEC dbo.sample1 @cur1 = @MyCursor OUTPUT;
WHILE (@@FETCH_STATUS = 0)
BEGIN;
FETCH NEXT FROM @MyCursor;
END; CLOSE @MyCursor;
DEALLOCATE @MyCursor;
GO Встроенные функции Встроенные функции, имеющиеся в распоряжении пользователей при работе с SQL, можно условно разделить на следующие группы:
28
функции для работы с датой и временем; функции конфигурирования; функции системы безопасности; функции управления метаданными; статистические функции.
Использование функций для работы со строковыми переменными
| Краткий обзор строковых функций
|
|
| Название
| Действие, выполняемое функцией
| функции
|
| ASCII
| Возвращает код ASCII левого символа строки
| CHAR
| По коду ASCII возвращает символ
| CHARINDEX
| Определяет порядковый номер символа, с которого начинается
|
| вхождение подстроки в строку
| DIFFERENCE
| Возвращает показатель совпадения строк
| LEFT
| Возвращает указанное число символов с начала строки
| LEN
| Возвращает длину строки
| LOWER
| Переводит все символы строки в нижний регистр
| LTRIM
| Удаляет пробелы в начале строки
| NCHAR
| Возвращает по коду символ Unicode
| PATINDEX
| Выполняет поиск подстроки в строке по указанному шаблону
| REPLACE
| Заменяет вхождения подстроки на указанное значение
| QUOTENAME
| Конвертирует строку в формат Unicode
| REPLICATE
| Выполняет тиражирование строки определенное число раз
| REVERSE
| Возвращает строку, символы которой записаны в обратном поряд-
|
| ке
| RIGHT
| Возвращает указанное число символов с конца строки
| RTRIM
| Удаляет пробелы в конце строки
| SOUNDEX
| Возвращает код звучания строки
| SPACE
| Возвращает указанное число пробелов
| STR
| Выполняет конвертирование значения числового типа в символь-
|
| ный формат
| STUFF
| Удаляет указанное число символов, заменяя новой подстрокой
| SUBSTRING
| Возвращает для строки подстроку указанной длины с заданного
|
| символа
| UNICODE
| Возвращает Unicode-код левого символа строки
| UPPER
| Переводит все символы строки в верхний регистр
|
Использование функций для работы с числами Краткий обзор математических функций
-
Название_функции__Действие_,__выполняемое_функцией'>Название функции
| Действие, выполняемое функцией
| ABS
| Вычисляет абсолютное значение числа
| ACOS
| Вычисляет арккосинус
|
| 29
| ASIN
| Вычисляет арксинус
| ATAN
| Вычисляет арктангенс
| ATN2
| Вычисляет арктангенс с учетом квадратов
| CEILING
| Выполняет округление вверх
| COS
| Вычисляет косинус угла
| COT
| Возвращает котангенс угла
| DEGREES
| Преобразует значение угла из радиан в градусы
| EXP
| Возвращает экспоненту
| FLOOR
| Выполняет округление вниз
| LOG
| Вычисляет натуральный логарифм
| LOG10
| Вычисляет десятичный логарифм
| PI
| Возвращает значение "пи"
| POWER
| Возводит число в степень
| RADIANS
| Преобразует значение угла из градуса в радианы
| RAND
| Возвращает случайное число
| ROUND
| Выполняет округление с заданной точностью
| SIGN
| Определяет знак числа
| SIN
| Вычисляет синус угла
| SQUARE
| Выполняет возведение числа в квадрат
| SQRT
| Извлекает квадратный корень
| TAN
| Возвращает тангенс угла
|
30
Использование функций для работы с типом дата/время Краткий обзор основных функций для работы с датой и временем
| Название
|
| Действие, выполняемое функцией
|
| функции
|
|
|
|
|
|
|
|
| DATEADD
|
| Добавляет к дате указанное значение дней, месяцев, часов и т.д.
|
| DATEDIFF
|
| Возвращает разницу между указанными частями двух дат
|
| DATENAME
|
| Выделяет из даты указанную часть и возвращает ее в символьном
|
|
|
|
|
|
|
|
| формате
|
| DATEPART
|
| Выделяет из даты указанную часть и возвращает ее в числовом
|
|
|
|
|
|
|
|
| формате
|
| DAY
|
| Возвращает число из указанной даты
|
| GETDATE
|
| Возвращает текущее системное время
|
| ISDATE
|
| Проверяет правильность выражения на соответствие одному из
|
|
|
|
|
|
|
|
| возможных форматов ввода даты
|
| MONTH
|
|
|
|
| Возвращает значение месяца из указанной даты
|
|
|
|
|
| YEAR
|
|
|
|
|
| Возвращает значение года из указанной даты
|
|
|
|
|
| MINUTE
|
|
|
| Возвращает значение минут из указанной даты/времени
|
|
|
| HOUR
|
|
|
| Возвращает значение часов из указанной даты/времени
|
|
|
| SECOND
|
|
| Возвращает значение секунд из указанной даты/времени
|
|
|
|
|