http://www.sqler.com/333281

저 또한 처음 SQL을 시작할 때에는 제 마음대로 이름을 적곤 했지만,

시간이 지나면 지날수록 정말 보기 힘들다는 것을 알게 되죠.

물론 sysobjects 명령어를 사용해서 가져오면 되지만,

명명규칙을 정하고 나면, Object 이름만 봐도 무엇인지 알 수 있게 됩니다.

회사마다 차이점은 있겠지만, 일반적인 개체 명명 방법은 이렇습니다.

1.     Object 앞에 접두사 또는 뒤에 접미어 사용 : Upper Case

2.     Camel Case _ 사용

Object

접두어 또는 접미어

Example

User Table

TB_

TB_Order

User Function

UDF_ 또는 UF_

UDF_Get_PackSize

Stored Procedure

USP_ 또는 UP_

USP_Select_AllPacket

View

VW_ 또는 UV_

VW_UserHistory

Partitioned View

PV_

PV_OrginalCustomer

Trigger

TRI_ / TRU_ / TRIU_ etc

TRI_TB_Order

Primary Key

PK_

PK_TB_User

Foreign Key

FK_

FK_TB_User_TB_Order_001

Constraint

CT_

CT_TB_User_MEM_ID

User Defined Type

UT_ 또는 UD_

UT_REM_001

Index (Nonclustered)

IDX_ 또는 IX_

IX_TB_User_001

 

접두어 또는 접미어 이외에는 보통 다음과 같은 규칙을 적용합니다.

1.     테이블에 속해 있는 경우 테이블명 표시

-       FK는 주/종 관계를 표시

-       제약조건은 해당 컬럼명 표시 : _CK / _DF / _UN 등의 접미어 표현 또는 아예 이를 접두사로 사용하는 경우도 많습니다.

-       Index : Clustered Index인 경우 Primary Key가 아니면 _C 를 붙이기도 합니다.

-       Trigger : Insert / Update / Delete 등의 행위를 보통 접두어에 포함합니다.

2.     함수나 프로시저 등은 그 성격을 그대로 표시

-       함수는 동사(Action) + 반환(Return) 으로 표시하거나 그 반대로 표시 : 정하기 나름

-       프로시저는 업무의 성격이나 로직의 Action을 담는 경우가 많습니다.(CRUD)

è  UP_Select_~~~ / UP_Delete_~~~ / UP_Make_~~~

정말 회사마다 차이점이 있습니다. 이게 정답은 아니니오해 마시길.~

Naming Rule 만 정리해도 문서 하나라능...

+ Recent posts