728x90

프로시저란?

데이터베이스에서의 프로시저란 프로그래머가 생성해놓은 쿼리문을 마치 하나의 메서드 형식으로 관리하는 것입니다.

실무에서는 굉장히 복잡한 쿼리문을 많이사용해요.

많은 컬럼을 조회하고 여러 테이블을 조인하고 거기다가 WHERE조건까지...

심한것은 하나의 쿼리를 만드는데 1000라인이 넘어가는경우도 종종있어요.

이렇게 장문의 쿼리를 사용할때마다 써줘야한다면 굉장히 불편할거에요.

그러므로 이 장문의 쿼리를 프로시저에 저장해주고,

쿼리문이 저장된 프로시저를 호출하여 프로그래밍을 하는것이 훨씬 효율적입니다.

 

프로시저 사용법

프로시저 생성 문법

더보기

CREATE PROC [프로시저명] AS [쿼리문]

프로시저 생성 예제

더보기

CREATE PROCEDURE UP_EXPRO (

@P_COMPANY NVARCHAR(500),--회사코드

@P_BIZAREA NVARCHAR(500),--고객사코드

@P_PLANT NVARCHAR(500) --공장코드

)

AS BEGIN

SET NOCOUNT ON

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;

SELECT A.CD_SHOP, A.BIZAREA, B.NM_BIZAREA, FROM SA_Z_DZ_POS_SHOP_WJT A

LEFT OUTER JOIN BIZAREA B ON A.COMPANY = B.COMPANY AND A.BIZAREA = B.BIZAREA

WHERE A.CD_COMPANY = @P_CD_COMPANY AND( ISNULL(@P_CD_BIZAREA,'')='' OR @P_CD_BIZAREA = A.CD_BIZAREA)

SET NOCOUNT OFF RETURN END;

 

 

프로시저 1개 조회

더보기

sp_helptext [프로시저명]

전체프로시저 조회

더보기

select * from INFORMATION_SCHEMA.ROUTINES

프로시저 삭제

더보기

DROP PROCEDURE [프로시저명]

 

728x90

'IT이야기 > MS-SQL' 카테고리의 다른 글

SET NOCOUNT 사용법  (0) 2019.10.29
피벗테이블  (0) 2019.10.29
저장 프로시져 내용 검색  (0) 2019.10.24
MSSQL 함수 모음  (0) 2019.10.24
DB Collation 변경, SINGLE USER MODE  (0) 2019.10.23
728x90

저장 프로시져 내용 검색

SELECT o.name

FROM sysobjects o JOIN syscomments c

on o.id = c.id

WHERE o.type = 'P' AND c.text LIKE '%텍스트%'

 

프로시져 내용 검색 말고도 트리거, 함수, 뷰테이블 검색이 가능함.

o.type 구분 확인.

728x90

'IT이야기 > MS-SQL' 카테고리의 다른 글

피벗테이블  (0) 2019.10.29
프로시저 사용법  (0) 2019.10.29
MSSQL 함수 모음  (0) 2019.10.24
DB Collation 변경, SINGLE USER MODE  (0) 2019.10.23
Image, varbinary를 Text로 변환  (0) 2019.09.24
728x90

Select object_name(id) From syscomments Where text like '%테이블 명 또는 필드명%'
Group by object_name(id)
Order by object_name(id)

 

 

 

728x90
728x90

DECLARE @spName NVARCHAR(MAX)
 
SET @spName = 'sp_syspolicy_purge_history' -- 해당 프로그시명을 입력
 
SELECT
 
             S.name AS JobName,
    A.name AS SP_Name ,
              CONVERT(NVARCHAR(10), B.step_id) + ' 단계' AS Step

FROM msdb.dbo.sysjobs A
INNER JOIN msdb.dbo.sysjobsteps B
ON A.job_id = B.job_id  and command like '%' + @spName + '%'
INNER JOIN [msdb].[dbo].[sysjobs] S
ON A.job_id = S.job_id

728x90

'IT이야기 > MS-SQL' 카테고리의 다른 글

SQL Server 트랜잭션 로그 읽기  (0) 2016.06.29
SQL Server 상태 모니터링  (0) 2015.09.02
Instant SQL Formatter  (0) 2015.09.02
MS-SQL 원격 테이블 조회 간단 정리  (0) 2015.09.02
SPGen-Stored Procedure code Generation tool  (0) 2015.09.02
728x90

http://lattice-spgen-stored-procedure-generator.en.softonic.com/download?ex=SWH-1608.7

728x90

+ Recent posts