Курсовая работа: Разработка физической модели базы данных "Учёт характеристик сигналов телемеханики"
Затем, используя предоставленный клиентским приложением интерфейс, пользователь назначает изменяемым сигналам примечания. Стартует транзакция внесения заявки в БД.
Сначала вносятся данные по заявке.
CREATE PROCEDURE InsertRequest
@Prefix CHAR(2),
@Number BIGINT,
@WriteDate DATETIME,
@ID_Request BIGINT OUT
AS
DECLARE @ID_SPTZAdminLogin INT;
SELECT @ID_SPTZAdminLogin = ID_SPTZAdminLogin
FROM SPTZAdminsLogins
WHERE NameLogin = SUSER_NAME()
IF @ID_SPTZAdminLogin IS NULL BEGIN
INSERT INTO SPTZAdminsLogins (NameLogin) VALUES
(SUSER_NAME())
SET @ID_SPTZAdminLogin = @@IDENTITY
END
IF EXISTS(SELECT ID_Request FROM Requests
WHERE Prefix = @Prefix AND Number = @Number)
BEGIN
raiserror('Заявка с таким номером и префиксом уже существует в базе данных!', 15, 1)
RETURN
END
INSERT INTO Requests (Prefix, Number, WriteDate, ExecDate,
ID_SPTZAdminLogin)
VALUES (@Prefix,@Number, @WriteDate, GETDATE(),
@ID_SPTZAdminLogin)
SET @ID_Request = @@IDENTITY
Эта процедура возвращает приложению, её вызвавшему ID заявки, по которому оно далее может добавлять, редактировать, удалять сигналы.