저는 SQL 및 저장 프로 시저가 처음이므로 아래의 저장 프로 시저에 대한 도움이 필요합니다. 나는 서로 연결된 테이블에 있어야한다 : "사용자"와 "프로파일".사용자 및 사용자 프로필 삭제
사용자를 삭제할 때 사용자 프로필도 삭제해야하며 그 이유는 아래 SP가하는 것입니다. 그러나 SP를 실행하면 User라는 테이블에있는 모든 UserID가 표시됩니다 (물론 "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
'SELECT'만 제거하십시오. 삭제와 관련하여 아무 것도하지 않습니다. – Oded