[데이터베이스] 저장 프로세스가 서로 호출될 때 임시 테이블의 명칭 주의점
962 단어 저장 프로세스
오후 내내 고생한 후에도 팀장은 고장 원인을 찾아냈다.
원래 서로 호출된 두 개의 저장 과정 중 임시 테이블이나 변수의 명칭이 가장 좋고, 그렇지 않으면 호출 오류가 발생하여 실행 오류가 발생할 수 있다.
나는 두 개의 저장 프로세스를 간단하게 써서 시범을 보여 주겠다. 반드시 실행할 수 있는 것은 아니고, 이해할 수 있으면 된다.
ps_day
CREATE PROCEDURE [ps_day]
AS
BEGIN
SELECT col1,col2
INTO #Temp
FROM history
SELECT * FROM #Temp
END
GO
ps_month
CREATE PROCEDURE [ps_month]
AS
BEGIN
DECLARE @date datetime,@i int
SET @date = DATEADD(M,-1, getdate())
SET @i = 0
WHILE(@i<30)
BEGIN
SELECT col1 ,0 AS col3
INTO #Temp
EXEC @ps_day
SET @i= @i + 1
END
SELECT col3
FROM #Temp
END
GO
실행 psmonth 후 [열명col2가 올바르지 않음]의 오류가 발견됩니다.
psday,ps_month의 임시표가 각각 #Temp1, #Temp2로 바뀌자 이 오류가 사라진 것을 발견했다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Java 호출 Oracle 스토리지 프로세스 상세 정보Java 호출 Oracle 스토리지 프로세스 상세 정보 단계: 1. Oracle 스토리지 프로세스 작성 2. 데이터베이스 작성 연결 도구 클래스 얻기 3. 간단한 응용 프로그램 호출 저장 프로세스 작성 구현: 1. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.