1. 참고링크 [Bottom] [Top]
The SQL-92 standard http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt
2. DB 기본 데이터형 [Bottom] [Top]
2.1. MS-SQL 기본 데이터형 [Bottom] [Top]
구분
데이터형
크기
범위
정수형
bigint
8
-263(-9,223,372,036,854,775,808) ~ 263-1(9,223,372,036,854,775,807)
int
4
-231(-2,147,483,648) ~ 231-1(2,147,483,647)
smallint
2
-215(-32,768) ~ 215-1(32,767)
tinyint
1
0 ~ 255
실수형
float
8
-1.79E+308 ~ -2.23E-308, 0과 2.23E-308 ~ 1.79E+308
real
4
-3.40E+38 ~ -1.18E-38, 0과 1.18E-38 ~ 3.40E+38
날짜/시간형
datetime
8
1753-01-01 ~ 9999-12-31 (단위: 3.33밀리초)
smalldatetime
4
1900-01-01 ~ 2079-01-06 (단위: 1분)
문자열
char
n
최대 8,000 바이트(고정길이)
varchar
n
최대 8,000 바이트(가변길이, 2바이트 추가)
text
n
최대 2^31 - 1(2,147,483,647) 바이트(가변길이)
이진 데이터형
binary
n
최대 8,000 바이트(고정길이)
varbinary
n
최대 8,000 바이트(가변길이, 2바이트 추가)
2.2. MySQL 기본 데이터형 [Bottom] [Top]
구분
데이터형
크기
범위
정수형
BIGINT
8
-263(-9,223,372,036,854,775,808) ~ 263-1(9,223,372,036,854,775,807)
0 ~ 264-1(18,446,744,073,709,551,615)
INT
4
-231(-2,147,483,648) ~ 231-1(2,147,483,647)
0 ~ 232-1(4,294,967,295)
SMALLINT
2
-215(-32,768) ~ 215-1(32,767)
0 ~ 216-1(65,535)
TINYINT
1
-128 ~ 127
0 ~ 255
실수형
FLOAT
8
-1.79E+308 ~ -2.23E-308, 0과 2.23E-308 ~ 1.79E+308
REAL
4
-3.40E+38 ~ -1.18E-38, 0과 1.18E-38 ~ 3.40E+38
날짜/시간형
DATE
3
A three-byte integer packed as DD + MM×32 + YYYY×16×32
TIME
3
A three-byte integer packed as DD×24×3600 + HH×3600 + MM×60 + SS
DATETIME
8
A four-byte integer packed as YYYY×10000 + MM×100 + DD
A four-byte integer packed as HH×10000 + MM×100 + SSTIMESTAMP
4
A four-byte integer representing seconds UTC since the epoch ('1970-01-01 00:00:00' UTC)
문자열
CHAR(M)
n
M × w bytes, 0 <= M <= 255, where w is the number of bytes required for the maximum-length character in the character set
VARCHAR(M)
n
L + 1 bytes if column values require 0 – 255 bytes, L + 2 bytes if values may require more than 255 bytes
이진 데이터형
BINARY(M)
n
M bytes, 0 <= M <= 255
VARBINARY(M)
n
L + 1 bytes if column values require 0 – 255 bytes, L + 2 bytes if values may require more than 255 bytes
3. DB 프로그래밍 규칙 [Bottom] [Top]
3.1. C++ 데이터형 선언 [Bottom] [Top]
1 // DB_Type.h : DB 데이터형 선언 2 // 3 4 #pragma once 5 6 #include <sqltypes.h> 7 8 9 //////////////////////////////////////////////////////////////////////////////// 10 // 네임스페이스 선언 11 12 namespace DB 13 { 14 //---------------------------------------------------------------------- 15 // DB 데이터형 선언 16 17 typedef __int64 BIGINT; 18 typedef long INT; 19 typedef short SMALLINT; 20 typedef unsigned char TINYINT; 21 22 typedef float REAL; 23 typedef double FLOAT; 24 25 typedef TIMESTAMP_STRUCT DATETIME; 26 typedef TIMESTAMP_STRUCT SMALLDATETIME; 27 28 typedef TCHAR CHAR; 29 typedef TCHAR VARCHAR; 30 31 typedef unsigned char BINARY; 32 typedef unsigned char VARBINARY; 33 34 //---------------------------------------------------------------------- 35 } // namespace DB 36
3.2. 저장 프로시저/함수 네이밍 규칙 [Bottom] [Top]
동작
저장 프로시저 네이밍 규칙
저장 함수 네이밍 규칙
검색
prc_{테이블}_SELECT
fn_{테이블}_SELECT
삽입
prc_{테이블}_INSERT
fn_{테이블}_INSERT
삭제
prc_{테이블}_DELETE
fn_{테이블}_DELETE
갱신
prc_{테이블}_UPDATE
fn_{테이블}_UPDATE
개수
prc_{테이블|열(Column)}_COUNT
fn_{테이블|열(Column)}_COUNT
동작
prc_{테이블}_동작
fn_{테이블}_동작
prc_동작
fn_동작
주의> 저장 프로시저/함수 이름은 SP_ 로 시작하지 않는다.
SP_ 로 시작하는 이름은 시스템 저장 프로시저/함수 (MS SQL Server).
