11548

Хранимые процедуры

Лабораторная работа

Информатика, кибернетика и программирование

Хранимые процедуры 1. БД Аналог приложения на языке программирования Borland Delphi База данных Приложение Таблица поле таблицы триггер Объект свойство объект

Русский

2013-04-08

40.5 KB

3 чел.

Хранимые процедуры

1.  

БД

«Аналог» приложения на языке программирования Borland Delphi

База данных

Приложение

Таблица

поле таблицы

триггер

Объект

свойство объекта

событие объекта

Хранимая процедура

Глобальная процедура приложения

2. Общий синтаксис создания хранимой процедуры

CREATE PROC[EDURE] <Имя_процедуры>

[@<Имя_параметра> <Тип_данных_параметра>

                                    [ = <Значение_параметра_по_умолчанию>]

                                    [OUTPUT]] [ ,...n ]

AS <SQL-выражения, составляющие тело процедуры>

3. Примеры

--3.1. Хранимая процедура, возвращающая сведения о поставках деталей

CREATE PROCEDURE sp_supplies

AS

SELECT supplier_name, detail_name, supply.supply_quantity, supply_date

FROM supply JOIN supplier ON supply.supplier_id = supplier.supplier_id

JOIN detail ON supply.detail_id = detail.detail_id

--Вызов процедуры sp_supplies:

EXECUTE sp_supplies

--3.2. Хранимая процедура, возвращающая сведения о поставках деталей за определенный интервал времени

CREATE PROCEDURE sp_date_supplies @start DATETIME, @end DATETIME

AS

SELECT supplier_name, detail_name, supply.supply_quantity, supply_date

FROM supply JOIN supplier ON supply.supplier_id = supplier.supplier_id

JOIN detail ON supply.detail_id = detail.detail_id

WHERE supply_date BETWEEN @start AND @end

--Вызов процедуры sp_date_supplies:

EXEC sp_date_supplies '01.01.2008', '17.11.2008'

--или

EXEC sp_date_supplies @end = '17.11.2008', @start = '01.01.2008'

--3.3. Процедура, добавляющая сведения в таблицу деталей

CREATE PROC sp_add_detail

@name VARCHAR (50) = 'Не задано',

@weight NUMERIC (10, 2),

@mat_id INT

AS

INSERT INTO detail (detail_name, weight, material_id)

VALUES (@name, @weight, @mat_id)

--Вызов процедуры sp_add_detail:

EXEC sp_add_detail 'Подшипник', 120, 2

--или

EXEC sp_add_detail @weight = 0.2, @mat_id = 1

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

CREATE PROCEDURE most_popular_material

@name VARCHAR (50) OUTPUT,

@quantity INT OUTPUT

AS

SELECT @name = material_name, @quantity = COUNT (detail_id)

FROM material m JOIN detail d

ON m.material_id = d.material_id

GROUP BY material_name

ORDER BY COUNT (detail_id)

--Вызов процедуры most_popular_material:

DECLARE @material VARCHAR (50),

       @quantity INT

EXEC most_popular_material

@name = @material OUTPUT,

@quantity = @quantity OUTPUT

SELECT 'Большинство деталей (' + CAST (@quantity AS VARCHAR) + ' шт.) сделано из материала ' + @material

GO

--3.5. Процедура, реализующая функцию каскадного удаления на связь между таблицами материалов и деталей

CREATE PROC sp_delete_material @material_id INT

AS

IF (NOT EXISTS (SELECT * FROM detail WHERE material_id = @material_id))

BEGIN

 DELETE FROM material WHERE material_id = @material_id

 RETURN (0)

END

ELSE

BEGIN

 DELETE FROM detail WHERE material_id = material_id

 IF (@@ERROR = 0)

  BEGIN

   DELETE FROM material WHERE material_id = @material_id

   RETURN (0)

  END

 ELSE RETURN (1)

END

--Вызов процедуры sp_delete_material:

DECLARE @result INT

EXEC @result = sp_delete_material 6

IF @result = 0

PRINT 'Материал удален успешно'

ELSE

PRINT 'Не получилось  :('

GO


 

А также другие работы, которые могут Вас заинтересовать

78590. ВОДОЁМЫ. РОДНИК 55 KB
  Формировать первичные знания, развивать стремление больше знать; ознакомив с литературой, вызвать желание больше читать, Заранее планируя свой выбор; учить умение высказывать свою точку зрения, опираясь на знания и опыт; воспитывать бережное отношение к водоемам, экономное использование пресной воды.
78591. Рідний край, де ми живемо, Україною зовемо 78 KB
  Обладнання: карта України державні символи України картки для роботи в парах зошит Я і Україна кросворд ілюстрації з краєвидами Києва різнокольорові паперові квітки недомальовані смайлики. Люби шануй оберігай Усе що зветься Україна.
78592. Зовнішня будова рослин. Рослини - живі організми. Рослини - джерело поживних речовин і кисню на Землі 97.5 KB
  Поглибити поняття органів рослин; сформувати уявлення про значення кожного органу (кореня, стебла, листків, квіток, плодів з насінням) для рослини, про особливості живлення і дихання рослин; уміння розрізняти органи рослин, називати їх; розвиток пізнавальних інтересів учнів...
78593. Кругообіг води в природі. Вода має бути чистою 155 KB
  Продовжити формувати поняття вода уявлення про умови перетворення води з одного стану в інший про кругообіг води в природі про необхідність бережного використання її. Обладнання: склянки з водою кусочки льоду скляна пляшка з замороженою водою; таблиця Кругообіг води в природі...
78594. ПІДСУМКОВИЙ УРОК ПО ТЕМІ «ТВАРИНИ» 44 KB
  Мета: Узагальнити і систематизувати знання учнів про найбільші групи тварин, розвивати вміння порівнювати варини,класифікувати їх за суттєвими ознаками, встановлювати взаємозв’язки з неживою природою; розвивати спостережливість,вміння аналізувати, робити висновки; виховувати шанобливе ставлення до тварин.
78595. Значення ґрунту в природі і для людей. Охорона ґрунту 3.69 MB
  Мета: формувати уявлення про значення ґрунтів в природі та значення його для людей про шляхи забруднення і руйнування ґрунту про охорону і збереження ґрунту розвивати логічне мислення виховувати бережливе ставлення до природних багатств.
78596. Формы финансовой поддержки малых предприятий 30 KB
  Государственная поддержка малого предпринимательства реализуется по следующим направлениям: формирование инфраструктуры поддержки и развития малого предпринимательства; создание льготных условий использования государственных финансовых материальнотехнических и информационных ресурсов научнотехнических разработок и технологий; учреждение порядка регистрации субъектов малого предпринимательства лицензирования их деятельности сертификации их продукции предоставления статистической и бухгалтерской отчетности; поддержка...
78597. Современные тенденции развития малого предпринимательства в регионах 48.5 KB
  Современные тенденции развития малого предпринимательства в регионах. В современных условиях роль малого бизнеса в рыночной экономике растет. Функции малого бизнеса: Экономические функции малого бизнеса: Придает рыночной системе необходимую гибкость активизация структурных сдвигов процессов разгосударствления и приватизации. Социальные функции малого бизнеса: Обеспечивает рост занятости.
78598. Взаимодействие малых и крупных компаний 56 KB
  Ford Motor США Mitsui Япония Mitsubishi Япония Itochu Япония Функции крупного бизнеса. Именно благодаря большим предприятиям идет развитие бизнеса в основе которого лежат механизмы снижения издержек производства. С наибольшей наглядностью эти свойства крупного бизнеса проявились в деятельности современных транснациональных корпораций ТНК. Эти особенности крупных фирм создают возможности для устойчивого развития бизнеса в средних и мелких размерах.