Я новичок в SQL и хранимых процедурах, и мне нужна помощь с хранимой процедурой ниже. У меня есть таблицы, которые связаны друг с другом: «Пользователь» и «Профиль».
При удалении пользователя профиль пользователя также должен быть удален, и это то, что делает SP ниже. Однако при выполнении SP все идентификаторы UserID в таблице User отображаются (конечно, из-за «SELECT UserID»), и это то, чего я не хочу.
Итак, я думаю, мой вопрос заключается в том, как написать Sp, чтобы он работал без использования SELECT?
Заранее спасибо.
CREATE PROCEDURE usp_DeleteUser
@UserID int
AS
BEGIN
BEGIN TRY
BEGIN TRANSACTION;
SELECT u.UserID
FROM [User] AS u INNER JOIN Profile AS p
ON u.UserID = p.UserID;
DELETE FROM Profile
WHERE UserID = @UserID;
DELETE FROM [User]
WHERE UserID = @UserID;
COMMIT TRANSACTION;
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION
RAISERROR ('Borttagningen gick inte att genomföra!',16,1)
END CATCH
END
GO