Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- @RequestParam
- 어노테이션
- frontController
- .xml
- application.properties
- produces
- c:if
- 바인딩변수
- 생성자주입
- springmvc
- MVC
- SpringBoot
- spring
- Java
- Model
- 비즈니스레이어
- 유효성검사
- PointCut
- springjdbc
- AOP
- @ResponseBody
- @Valid
- gradle
- @
- after-throwing
- jointpoint
- 스프링
- 서비스레이어
- 의존주입
- @RequestMapping
Archives
- Today
- Total
메모장
Oracle DBMS ' NVL ' 본문
728x90
반응형
< MySQL 문법 >
static final String SQL_INSERT = "INSERT INTO BOARD (MID,MNAME,PNUM,BCONTENT,BSTAR) VALUES (?,?,?,?,?)";
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ DBMS 를 변경할 때
< Oracle 문법 >
static final String SQL_INSERT
= "INSERT INTO BOARD (BID,MID,MNAME,PNUM,BCONTENT,BSTAR) VALUES ((SELECT NVL(MAX(BID),0) + 1 FROM BOARD),?,?,?,?,?)";
'NVL' 은 Oracle 데이터베이스에서 사용되는 함수 중 하나로, NULL 값을 처리하는 데 사용된다. NVL 함수는 첫 번째 인수로 받은 값이 NULL인 경우 두 번째 인수로 지정한 값으로 대체한다. 이를 통해 데이터 조회나 연산 시 NULL 값이 발생하는 경우에 대비하여 원하는 기본값을 제공할 수 있다.
예시
NVL(expression, replacement_value)
- expression: NULL 여부를 확인하고자 하는 값이다.
- replacement_value: expression이 NULL인 경우 대체할 값이다.
(SELECT NVL(MAX(BID),0) + 1 FROM BOARD),?,?,?,?,?
==> 해석하자면 MAX(BID) 가 null 이면 0 으로 바꿔줘 !
거기에 +1 이다. 1 다음 부터는 최대값에 계속 +1 을 해줘 !
Oracle에는 auto_increment 구문이 없기 때문에 NVL 구문으로 대체
728x90
반응형
'DB > 개념정리' 카테고리의 다른 글
| [DB] 트리거 (0) | 2024.04.10 |
|---|---|
| 유니크 키 (Unique Key) (0) | 2024.04.10 |
| WHERE 1=1 (0) | 2024.04.10 |
| JOIN 과 순위함수 (0) | 2024.04.10 |
| 데이터 그룹화 GROUP BY,HAVING,그룹함수 (0) | 2024.04.10 |