Главная страница
Навигация по странице:

  • Название функции

  • Варианты заданий к лабораторной работе № 3 Общие сведения

  • Лабораторная работа 1 создание баз данных (БД) в microsoft sql server


    Скачать 1.1 Mb.
    НазваниеЛабораторная работа 1 создание баз данных (БД) в microsoft sql server
    Дата15.10.2019
    Размер1.1 Mb.
    Формат файлаdoc
    Имя файлаms_sql_2005_c_v2.doc
    ТипЛабораторная работа
    #90115
    страница9 из 11
    1   2   3   4   5   6   7   8   9   10   11

    Управление объектами через функции




    Название функции







    Действие, выполняемое функцией
















    OBJECT_ID













    Пример:



















    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 DYNAMIC FOR



















    SELECT model_name FROM Models;



















    OPEN @cur1;



















    GO











































    OBJECT_NAME























































    Пример:


























































    DECLARE @MyID int;





































    SET @MyID = (SELECT


































    OBJECT_ID('DB_Books.dbo.Books','U'));






















    SELECT name, object_id, type_desc






















    FROM sys.objects


























































    WHERE name = OBJECT_NAME(@MyID);











































    Вернет, например:
















    31






















    Books 2073058421 USER_TABLE

    OBJECT_DEFINITION Пример:
    SELECT OBJECT_DEFINITION (OBJECT_ID(N'dbo.Count_books')) AS [type];
    Вернет все описание процедуры или NULL, ес-ли ее нет в бд


    Варианты заданий к лабораторной работе №3
    Общие сведения
    Для получения более подробной информации о работе тех или иных операторов или функций можно запустить утилиту Books Online из состава MS SQL Server и в разделе «Указатель» набрать искомый ключевой эле-мент.
    Для выполнения заданий ориентироваться на вариант и список номе-ров заданий во второй лабораторной работе.


    Специальные знаки и простейшие операторы в Transact SQL




    1. Проверить

    работу

    описанной

    установки

    SET

    QUOTED_IDENTIFIER.
    2. Проверить работу описанной установки SET DATEFIRST.
    Объявление переменных


    1. Объявить переменную Perem1 типа денежный, а переменную Perem2 типа число с целой частью равной 8 и дробной частью равной 2.




    1. Объявить переменную Perem1 типа строка длиной 100, а перемен-ную Perem2 типа длинное целое.




    1. Объявить переменную Perem1 типа динамическая строка с макси-мальной длиной 1000, а переменную Perem2 типа целое число.




    1. Объявить переменную Perem1 типа строка длиной 30, а перемен-ную Perem2 типа число с целой частью равной 10 и дробной частью равной


    3.
    7. Объявить переменную Perem1 типа дата/ время, а переменную Perem2 типа число в диапазоне от 0 до 255.
    Присвоение значений переменным и вывод значений на экран


    1. Подсчитать среднюю цену закупленных книг (с помощью запроса SELECT) и умножить ее на значение 123,34, которое необходимо сохра-нить в отдельной переменной, вывести значение переменной на экран.




    1. Подсчитать суммарную цену всех закупок книг, результат помес-тить в переменную, вывести значение переменной на экран.


    32

    1. Подсчитать количество книг в справочнике книг, результат помес-тить в переменную, вывести значение переменной на экран.




    1. Определить минимальную дату рождения автора в справочнике ав-торов, результат поместить в переменную, вывести значение переменной на экран.


    Сочетание ключевых слов SET и SELECT


    1. Подсчитать количество поставщиков книг, результат поместить в переменную.




    1. Подсчитать сумму закупок книг, результат поместить в перемен-

    ную.


    1. Подсчитать среднюю цену в таблице покупок книг, результат по-местить в переменную.




    1. Подсчитать максимальную стоимость книг в закупке, результат поместить в переменную.


    Работа с датой и временем


    1. Определить переменную Date1 типа дата/время. Присвоить ей зна-


    чение даты 31.12.2006 в формате dd.mm.yyyy.

    1. Определить переменную Date1 типа дата/время. Присвоить ей зна-

    чение даты 31.12.2006 в формате mm.dd.yyyy.

    1. Определить переменную Date1 типа дата/время. Присвоить ей зна-

    чение даты 31.12.2006 в формате yyyy.mm.dd.
    Создание временной таблицы через переменную типа TABLE


    1. Создать локальную таблицу с названием TEMP и полями типа да-та/время, длинное целое, строка. Добавить в нее две записи с данными и вывести результат на экран.




    1. Создать локальную таблицу с названием TEMP и полями типа длинное целое, строка и значением по умолчанию «введите что-нибудь», денежный. Добавить в нее две записи с данными и вывести результат на экран.




    1. Создать локальную таблицу с названием TEMP и полями типа це-лое, динамическая строка, бит со значением по умолчанию «1». Добавить в нее две записи с данными и вывести результат на экран.




    1. Создать локальную таблицу с названием TEMP и полями типа да-та/время, длинное целое, строка. Добавить в нее две записи с данными и вывести результат на экран.




    1. Создать локальную таблицу с названием TEMP и полями типа да-та/время, длинное целое с автонаращиванием, динамическая строка. Доба-вить в нее две записи с данными и вывести результат на экран.


    33

    Преобразование типов переменных


    1. Объявить переменные типа FLOAT, CHAR, TINYINT. Присвоить значения, соответствующие типам. Выполнить преобразование перемен-


    ных типа FLOAT, CHAR, TINYINT в INT, DATETIME, BIT соответствен-

    но и вывести результат на экран.


    1. Объявить переменные типа INT, DATETIME, BIT. Присвоить зна-чения, соответствующие типам. Выполнить преобразование переменных типа INT, DATETIME, BIT в FLOAT, CHAR, TINYINT соответственно и вывести результат на экран.

    2. Объявить переменные типа NUMERIC, VARCHAR, DATETIME.


    Присвоить значения, соответствующие типам. Выполнить преобразование переменных типа NUMERIC, VARCHAR, DATETIME в FLOAT, CHAR, BIGINT соответственно и вывести результат на экран.


    1. Объявить переменные типа BIT, NVARCHAR, DATETIME. При-своить значения, соответствующие типам. Выполнить преобразование пе-


    ременных типа BIT, NVARCHAR, DATETIME в FLOAT, INT, BIGINT со-

    ответственно и вывести результат на экран.
    Условная конструкция IF

      1. Подсчитать количество поставщиков в таблице Deliveries. Если их




    • таблице от 2 до 5, то ничего не сообщать, в противном случае вывести сообщение вида "В таблице ... поставщиков" (вместо многоточия поста-вить точное количество поставщиков).




      1. Подсчитать сумму закупок книг в таблице покупок. Если получен-ная сумма в диапозоне от 1000 до 5000, то ничего не сообщать, в против-ном случае вывести сообщение вида "Сумма закупок = …" (вместо много-точия поставить точную сумму).




      1. Подсчитать среднюю стоимость закупки книг в таблице покупок. Если полученная стоимость в диапозоне от 1000 до 5000, то ничего не со-общать, в противном случае вывести сообщение вида "Средняя стоимость закупки = …" (вместо многоточия поставить точную среднюю стоимость).




      1. Определить минимальную стоимость закупки книг в таблице поку-пок. Если полученная стоимость в диапозоне от 200 до 300, то ничего не сообщать, в противном случае вывести сообщение вида "Минимальная стоимость закупки = …" (вместо многоточия поставить точную стои-мость).


    Цикл WHILE
    32. Определить количество записей в таблице Authors. Пока записей меньше 15, делать в цикле добавление записи в таблицу с автоматическим наращиванием значения ключевого поля, а вместо имени автора ставить значение 'Автор не известен'.

    34

    1. Определить количество записей в таблице издательств. Пока запи-сей меньше 20, делать в цикле добавление записи в таблицу с автоматиче-ским наращиванием значения ключевого поля, а вместо названия изда-тельства ставить значение 'не известно'.




    1. Определить количество записей в таблице поставщиков. Пока за-писей меньше 17, делать в цикле добавление записи в таблицу с автомати-ческим наращиванием значения ключевого поля, а вместо названия по-ставщика ставить значение 'не известен'.


    Объявление курсора

    35. Создать статический курсор по данным таблицы Books с полями
    Code_book, Title_book.

    1. Создать динамический курсор по данным таблицы поставщиков

    (таблица Deliveries) с полями Name_delivery, Name_company.

    1. Создать статический курсор по данным таблицы Books и Authors с

    полями Code_book, Title_book, Name_author.


    1. Создать статический курсор по данным таблицы Books и Publishing_house с полями Code_book, Title_book, Publish.


    Операторы для работы с курсором


    1. Создать динамический курсор для чтения по данным таблицы De-liveries с полями Code_delivery, Name_delivery. Вывести данные 3-й запи-


    си.


    1. Сделать текущей БД db_books. Поместить в курсор данные табли-цы Purchases. Перебрать все записи таблицы Purchases. Просуммировать значения произведений полей Cost и Amount и результат сохранить в пе-ременной Sum_table, которую после суммирования вывести на экран. За-крыть и удалить из памяти курсор.




    1. Объявить статический курсор по данным таблиц Authors и Books. Вывести данные 5-й записи.


    Использование функций для работы со сторовыми переменными Базовый текст дан в отдельном файле по вариантам. Для выполнения
    этого блока заданий в начале программы, которую вы создаете, объявите переменную типа varchar и присвойте ей в качестве значения строку с лю-бым базовым текстом, который будет анализироваться и/или исправляться

    • заданиях.




      1. Удалить в тексте лишние пробелы. Лишними считаются те, кото-рые идут непосредственно за пробелом. Подсчитать количество исправле-ний.


    35

    1. Подсчитать количество встреч каждой из следующих букв: "а", "в", "и", "п" в базовом тексте.




    1. Подсчитать доли процентов встречи следующих букв: "е", "о", если суммарный процент встречаемости всех этих букв равен 100% или процент встречаемости е% + о% равен 100%.




    1. По правилам оформления машинописных текстов перед знаками


    .,!?:; пробелы не ставятся, но обязательно ставятся после этих знаков. Уда-лите лишние пробелы. Подсчитать количество исправлений.


    1. По правилам оформления машинописных текстов перед знаками


    .,!?:; пробелы не ставятся, но обязательно ставятся после этих знаков. Рас-ставьте недостающие пробелы. Подсчитать количество исправлений.


    1. Найти из исходного текста второе предложение и вернуть его в пе-ременную Perem, а также вывести на экран весь исходный текст и найден-ное предложение.

    2. Удалить из базового текста 2, 4, 6, 8 слова.

    3. Удалить из базового текста 3, 5, 7, 10 слова.

    4. Вставить в базовый текст вместо букв «а» - «АА».

    5. Вставить в базовый текст вместо букв «е» и «о» - «ББ».




    1. Поменять местами первое и последнее слова в базовом тексте.


    Использование функций для работы с числами 53. Вывести значение формулы (1), переменные которой нужно опи-
    сать и присвоить произвольные значения.
















    RT


































    v = v0 e 45.




    (1)

    54.

    Подсчитать значение формулы (2), переменные которой нужно

    описать и присвоить произвольные значения.










    y =2x

    ⋅ exp(ln(x 2 ))

    .

    (2)

























    55.

    Подсчитать значение формулы (3), переменные которой нужно

    описать и присвоить произвольные значения.










    y =

    sin( a )

    a .




    (3)






















    x 2

    b 3






















    56.

    Подсчитать значение формулы (4), переменные которой нужно

    описать и присвоить произвольные значения.










    10

























    y = I n a

    .







    (4)







    n =1











































    57.

    Подсчитать значение формулы (5), переменные которой нужно

    описать и присвоить произвольные значения.








    36




    tg( a )










    y =

    a b c .









    (5)







    a + b c










    58. Подсчитать значение формулы (6), переменные которой нужно

    описать и присвоить произвольные значения.







    y =sin(a)⋅exp(b c).

    (6)

    59. Подсчитать значение формулы (7), переменные которой нужно

    описать и присвоить произвольные значения.







    y = x 4 ln( a ) b c .

    (7)

    60. Подсчитать значение формулы (8), переменные которой нужно

    описать и присвоить произвольные значения.




























    y =




    x a




























    b 3.

    (8)










    61. Подсчитать значение формулы (9), переменные которой нужно

    описать и присвоить произвольные значения.




    y =

    a cos( x )

    sin( x ) .

    (9)













    b 2

    a 2



















    Использование функций для работы с типом дата/время


    1. Вывести на экран название текущего месяца и текущее время. За-писать в таблицу Purchases в поле Date_order одинаковую дату поступле-ния, которая равна 12.03.2000.




    1. Разобрать на отдельные составляющие текущую дату и время и вы-вести значения на экран в следующем порядке (вместо многоточий):




    1. "Сегодня: День = …, Месяц = …, Год = …, Часов = …, Минут = …, Секунд= …"




    1. В исходный текст, сохраненный в переменной Perem, после слова " время " вставить текущее время. Результат сохранить в той же переменной Perem и вывести на экран.

    1   2   3   4   5   6   7   8   9   10   11


    написать администратору сайта