728x90
decimal 및 numeric 사용법에 대해서 알아보고
자릿수에 대해서 테스트 및 산술 오버플로 오류에 대해서도 확인해 보자
자릿수 확인
decimal[ (p[ ,s] )] 및 numeric[ (p[ ,s] )]
고정 정밀도 및 배율 숫자입니다. 최대 정밀도를 사용하는 경우 유효한 값은 - 10^38 +1 ~ 10^38 - 1입니다. 10진수에 대한 ISO 동의어는 dec 및 dec(p, s)입니다.
숫자는 10진수와 기능적으로 동일합니다.
p(전체 자릿수)
저장할 최대 소수 자릿수입니다. 이 숫자에는 소수점의 왼쪽과 오른쪽이 모두 포함됩니다. 전체 자릿수 값은 1에서 최대 전체 자릿수인 38 사이여야 합니다. 기본 전체 자릿수는 18입니다.
예제
--테이블 생성
CREATE TABLE dbo.DN_TEST
(
DecimalColumn DECIMAL(5,2)
,NumericColumn NUMERIC(10,5)
);
GO
--데이터 입력
INSERT INTO dbo.DN_TEST VALUES (123, 12345.12);
--데이터 확인
SELECT DecimalColumn, NumericColumn
FROM dbo.DN_TEST;
아래와 같이 자릿수가 넘어가면 오류가 발생한다.
INSERT INTO dbo.DN_TEST VALUES (1234, 12345.12);
int을(를) 데이터 형식 numeric(으)로 변환하는 중 산술 오버플로 오류가 발생했습니다.
반응형
그리드형
'IT > MSSQL' 카테고리의 다른 글
[MSSQL] 데이터베이스 소유자 (db_owner) 조회 및 변경방법 (0) | 2024.03.22 |
---|---|
[MSSQL] 복원 전 백업파일의 논리적 파일 위치 확인방법(FILELISTONLY) (0) | 2024.03.12 |
[MSSQL]현재 세션의 SET OPTION 의 상태값을 확인하는 방법 (0) | 2024.03.12 |
[SQL프로파일] Showplan 설정 테스트 (1) | 2023.11.18 |
[MSSQL] 엔터, 탭 제거 후 엑셀에 붙여넣기 (1) | 2023.11.18 |
댓글