울음참고 개발공부
bad SQL grammar []; nested exception is java.sql.BatchUpdateException: 키워드 'OPTION' 근처의 구문이 잘못되었습니다.
DBMS/MSSQL 2024. 10. 17. 10:49

[ 예외 구문 & 문제 ]  bad SQL grammar []; nested exception is java.sql.BatchUpdateException: 키워드 'OPTION' 근처의 구문이 잘못되었습니다.    "OPION"     MSSQL 에서 사용하는 예약어를 컬럼명으로 사용하여 조회하려 하는경우 발생     오타문제인줄알고 눈알빠져라 확인했는데 아니었음    [ 해결 ]  [ ] 로 감싸서 조회한다 ex) SLECT [OPRION] FROM YOUR_TABLE;     +) 추가  ; uncategorized SQLException; SQL state [S0001]; error code [102]; '1' 근처의 구문이 잘못되었습니다.; nested exception is java.sql.Ba..

article thumbnail
MSSQL | DATETIME 타입 공백 표시 - CONVERT(),COALESCE(), ISNULL(), IS NULL
DBMS/MSSQL 2023. 10. 24. 10:56

2023년 10월 기준 검색 결과 처음 뜨는 내용이다.     DATETIME 을 그냥 IS NULL 로 처리하게 된다면 '1990-01-01' 과 같은 초기화 값을 얻게된다.   처리하는 방법을 알아보자     SELECT CASE WHEN ORDER_DATE IS NULL THEN ' ' ELSE ORDER_DATE END AS ORDER_DATE , CASE WHEN CONVERT(VARCHAR, ORDER_DATE, 120) IS NULL THEN ' ' ELSE ORDER_DATE END AS ORDER_DATE2 , ISNULL (CONVERT(VARCHAR,ORDER_DATE, 120), ' ') AS ORDER_DATE3 ..

article thumbnail
MSSQL | WITH(NOLOCK) , 트랜잭션의 격리 수준
DBMS/MSSQL 2023. 8. 14. 09:49

MSSQL 에서 WITH(NOLOCK)  을 사용하는 경우   MSSQL 은 기본적으로 SELECT 시 공유잠금(S Lock) 이 걸린다.이는 MSSQL 의 기본 격리수준(Isolation Level) 이 Read Committed 이기 때문이다.즉, DML(INSERT, UPDATE, DELETE) 작업중인 ROW 또는 TABLE 에 SELECT 할 경우,해당 작업이 끝나야 SELECT 할 수 있다는 의미이다.   만일 이렇게 수행된다면 DB의 성능은 떨어지고, 데드락(Deadlock) 이 발생될 수 있다. 이를 방지하기 위해 WITH(NOLOCK) 을 사용할 수 있다.WITH(NOLOCK) 의 격리수준(Isolation Level)은 Read Uncommitted 와 같다고 보면 된다. 즉, SELE..