2009-07-06 2 views
46

스토어드 프로 시저/함수 등의 주석 헤더가 어떻게 보이는지 (그래서 예제를 게시하십시오) ... 나는 SQL Server Management Studio가 무엇을 만드는지 실제로 보았지만 무엇에 관심이 있는지 다른 사람들은 ... 형식, 사용되는 문자, 절차 정보/세부 사항 등처럼 나는 ... 정말 그들이 다른 점은 무엇SQL 코멘트 헤더 예제

SQL Server Management Studio를 (버전 9) 저장 프로 시저 코멘트 헤더 기본 추측 :

-- ============================================= 
-- Author:  Name 
-- Create date: 
-- Description: 
-- ============================================= 
+3

줄 주석 (-)을 사용하지 말고 줄 지어 쓰기에 문제가있는 경우에는 블록 주석 (/ * * /)을 사용하십시오. –

+1

@ GabrielGuimarães에서 정교하게 설명해 주시겠습니까? 나는 줄 주석이있는 많은 스크립트를 가지고 있으며 이것에 대해 미리 알지 못했다. 나는 무엇을주의해야 하는가? –

+0

@ GabrielGuimarães Management Studio에는 선택한 모든 줄에 줄 주석을 추가하는 "선택한 줄 주석으로 처리"기능이 있습니다. 역함수 "선택한 선 주석 제거"는 모든 선택된 선에서 선행 주석을 제거합니다. 나를 위해 충분히 잘 작동합니다. 어떤 라인 서식 문제가 있습니까? –

답변

41

내가 지적 할 수있는 모든 "역사를 바꿀"와 "수정 한 날짜"필드는 오히려 것보다, 버전 관리 소프트웨어에서 얻을 수 있어야 할 수 있습니다 프로그래머가 코드에 포함합니다. 이것은 C (예를 들어) 프로그래머가 오래전에 배웠던 소손입니다. 이 귀하의 요구 사항에 맞는 경우

+3

이것에 대한 모범 사례가 있습니까? – lstanczyk

+3

저장 프로 시저를 현명하게 사용하여 소스 컨트롤을 사용하는 많은 회사를 보지 못했습니다. –

+5

C 프로그래머가이 수업을 배운 이유를 설명 할 수 있습니까? 커밋 할 때 소스 헤더와 소스 제어 주석에 모두 넣어야한다고 생각합니다. 파일과 소스 제어 시스템간에 이동하지 않아도되는 장시간 동안의 시간을 절약하여 기본 설명을 볼 수 있습니다. 소스 제어 시스템을 전환하는 경우 최소한 소스가 일정하게 유지됩니다. 이제는 두 곳에서 메타 데이터를 가지고 있다고 주장 할 수 있습니다. 그러나 개발자가 날짜 복사를 처리 할 수없는 경우 서로 밀접하게 연결된 두 위치 간 간단한 설명을 통해 날짜가 기록됩니다. – Kuberchaun

9

우리는 이와 같은 것을 사용하며 나에게 매우 유용합니다.

/* 
Description: 
Author: 
Create Date: 
Param: 
Return: 
Modified Date: 
Modification: 
*/ 
4
-- [why did we write this?] 
-- [auto-generated change control info] 
+1

정확히. 왜 문서화하는 것이 무엇보다 훨씬 가치가 있습니다. 초보자로서, 나는 왜, 어떻게 그리고 어떻게 선호 하는가. :) –

29
/****************************** 
** File:  
** Name: 
** Desc: 
** Auth: 
** Date: 
************************** 
** Change History 
************************** 
** PR Date  Author Description 
** -- -------- ------- ------------------------------------ 
** 1 01/10/2008  Dan  added inner join 
*******************************/ 
+2

저장 프로 시저에 새 코드를 추가 할 때 맨 끝에 참조를 추가합니다. 예 : select * from Boxes 내부 조인 색상 Boxes.colorID = Colors.ID -PR # 1 –

+2

그 말은 우리가 어디를 가든 줄 끝의 "- PR # 1"과 같은 모든 주석을 제거하기위한 집단적 결정을 내릴 때를 생각 나게합니다. 그들은 어떤 목적으로도 봉사하지 못했습니다. 드물게 필요할 때 변화에 대한 법의학 분석이 변경 제어 소프트웨어를 사용하면 훨씬 쉬워졌습니다. –

+0

+1에 대한 블록 설명 및 변경 로그 –

14
-- 
-- STORED PROCEDURE 
--  Name of stored procedure. 
-- 
-- DESCRIPTION 
--  Business description of the stored procedure's functionality. 
-- 
-- PARAMETERS 
--  @InputParameter1 
--   * Description of @InputParameter1 and how it is used. 
-- 
-- RETURN VALUE 
--   0 - No Error. 
--  -1000 - Description of cause of non-zero return value. 
-- 
-- PROGRAMMING NOTES 
--  Gotchas and other notes for your fellow programmer. 
-- 
-- CHANGE HISTORY 
--  05 May 2009 - Who 
--  * More comprehensive description of the change than that included with the 
--   source code commit message. 
-- 
0
-- Author: 
-- 
-- Original creation date: 
-- 
-- Description: 
0

참조 :

/*

  • Notes on parameters: Give the details of all parameters supplied to the proc

  • This procedure will perform the following tasks: Give details description of the intent of the proc

  • Additional notes: Give information of something that you think needs additional mention, though is not directly related to the proc

  • Modification History: 07/11/2001 ACL TICKET/BUGID CHANGE DESCRIPTION

*/

2

우리는 현재 다음과 같습니다를 사용하는 헤더 : 보조 노트에

--------------------------------------------------- 
-- Produced By : Our company 
-- URL  : www.company.com 
-- Author  : me 
-- Date  : yesterday  
-- Purpose  : to do something 
-- Called by  : some other process 
-- Modifications : some other guy - today - to fix my bug 
------------------------------------------------------------ 

, 나는 SQL 내에서 발생하는 의견 나는 항상 다음 형식을 사용합니다 :

/* 논평 */

과거에는 SQL Server의 스크립트 작성이 재미있는 작업을 수행하는 데 문제가있었습니다 (필수 SQL을 주석 처리했습니다 ...).

+6

"날짜 : 어제"LOL –

4
set timing on <br> 
set linesize 180<br> 
spool template.log 

/*<br> 
##########################################################################<br> 
-- Name : Template.sql<br> 
-- Date    : (sysdate) <br> 
-- Author   : Duncan van der Zalm - dvdzalm<br> 
-- Company   : stanDaarD-Z.nl<br> 
-- Purpose   : <br> 
-- Usage  sqlplus <br> 
-- Impact :<br> 
-- Required grants : sel on A, upd on B, drop on C<br> 
-- Called by  : some other process<br 
##########################################################################<br> 
-- ver user date  change <br> 
-- 1.0 DDZ 20110622 initial<br> 
##########################################################################<br> 
*/<br> 

sho user<br> 

select name from v$database; 

select to_char(sysdate, 'Day DD Month yyyy HH24:MI:SS') "Start time" 
from dual 
; 


-- script 


select to_char(sysdate, 'Day DD Month yyyy HH24:MI:SS') "End time" 
from dual 
; 

spool off 
4
------------------------------------------------------------------------------- 
-- Author  name 
-- Created  date 
-- Purpose  description of the business/technical purpose 
--    using multiple lines as needed 
-- Copyright © yyyy, Company Name, All Rights Reserved 
------------------------------------------------------------------------------- 
-- Modification History 
-- 
-- 01/01/0000 developer full name 
--  A comprehensive description of the changes. The description may use as 
--  many lines as needed. 
------------------------------------------------------------------------------- 
0

는 여기에 내가 현재 무엇을 사용합니다. 트리플 주석 (/ */*/*)은 객체 정의에서 헤더 주석을 선택하는 통합을위한 것입니다.

/*/*/* 

    Name:   pr_ProcName 
    Author:   Joe Smith 
    Written:  6/15/16 
    Purpose:  Short description about the proc. 

    Edit History: 6/15/16 - Joe Smith 
         + Initial creation. 
        6/22/16 - Jaden Smith 
         + Change source to blahblah 
         + Optimized JOIN 
        6/30/16 - Joe Smith 
         + Reverted changes made by Jaden. 

*/*/*/ 
+0

통합은 무엇입니까? 기성품 또는 맞춤형으로 제작 되었습니까? – unfinishedmonkey

+0

@unfinishedmonkey custom - 패턴에 대한 객체를 스캔하고 주석을 테이블에 저장하는 프로세스를 만들었습니다. – chazbot7