SQL 4

[OracleDB] ALTER TABLE ~ SET UNUSED의 사용

5개월전에 데이터베이스를 공부하면서 같은 포스팅을 쓴 적이 있었는데 (바로 이전 포스트) , SET UNUSED가 왜 쓰이는지에 대한 글을 포스팅을 한 적이 있었다. 당시에 정확한 내용은 아니었고 어느 블로그의 댓글을 보고 답을 얻게 되었는데 요약하면 다음과 같았다. 미리 마킹해두고 나중에 삭제하기 위해서 사용한다. 왜냐면 바로 삭제하면 별로 좋지 않기 때문이다. 이렇게 알고 있었는데 좀더 정확한 내용을 알게 되었다. 내용은 아래와 같다. ALTER TABLE ~ SET UNUSED 컬럼을 삭제하지는 않는다. 다만 논리적으로 사용을 제한할 뿐이다. 특정 테이블의 컬럼을 바로 삭제하는 것은 위험하다. 왜냐면 여러 사용자가 이미 사용하고 있기 때문이다. (비즈니스단계에서) 또한 테이블에 저장된 내용이 많다면..

Database/OracleDB 2021.09.08

[OracleDB] sql에서 set unused는 왜 쓸까요?

sql 공부 중에 그냥 슬쩍 지나갈법도 한데, 유난히 고민되는 구문이 하나 있었다. set unused인데, 평소에 그냥 읽어보고 넘어갔었는데, 오늘은 대체 이걸 왜 쓰는걸까라는 생각이 문득 들었다. 그래서 검색해보았는데 www.gurubee.net/article/48959 칼럼 UNUSED의 용도 초보시절 Column 을 UNUSED로 변경하면 임시로 사용못하게 했다가 USED로 바꾸면 다시 사용이 되는줄 알고 쿼리 실행했다가 고생한적이 있습니다...(d.. www.gurubee.net 이 블로그에 너무 정리를 잘 해주셨다. 간단하게 말하자면, unused로 마킹을 해놓음으로써 그 이후로는 액세스도 할 수 없다. 또한 다시 되돌릴 수도 없다. unused를 하더라도 사용된 공간을 환원받을 수도 없다. ..

Database/OracleDB 2021.04.26

[SpringBoot] java.lang.IllegalArgumentException : Mapped Statements collection does not contain value 에러

mybatis를 통해 원하는 결과를 콘솔창에 출력해서 보려고 하는 중인데 java.lang.IllegalArgumentException 에러가 발생했다. 세부 사항을 보니 Mapped Statements collection does not contain value 라고 뜨는 것을 확인할 수 있었다. 이번 오류는 모두 오타로 인함이었다. 이전 포스팅과 연계된 포스트인데, 이전 포스팅에서는 xml문서에서 첫라인에 띄어쓰기가 들어가서 발생한 문제였다. 이번경우는 mapper에 있는 namespace에 #이 들어간 것이었다. 저 # 때문에 인식을 하지 못한 것이다. 아 그리고 sql 구문을 써줄 때 예를 들어서 insert into board(seq,title,writer,content) values((sele..

[JSTL] JSTL의 SQL사용 columnNames와 rows 의 사용

JSTL에서 SQL 문을 사용하는 예제를 작성하던 도중에 본적이 없는 구문을 찾았다. 그래서 어떻게 동작하는지 궁금해서 찾아보았다. 위에 보면 알겠지만 10번째와 15번째에 columnNames와 rows 로 접근하여 열과 행의 정보를 가져온다. 그런데 이게 어떻게 이런게 열과 행의 정보를 가져오는지가 이해가 안됬다. 설명도 없을 뿐더러 저장되어있는 필드 변수의 값을 가져오는건지 아니면 메소드를 사용해서 가져오는건지 잘 이해가 안됬다. (애초에 사실 ${} 표현에 대한 이해가 조금 부족했던 것 같다. 그래서 이해가 안된거지) 그래서 일단은 저기에 쓰인 rs 참조변수가 ResultSet 타입이어서 java api 문서에서 ResultSet파트에서 메소드를 다 봤는데, 없었다. 근데 이게 접근법이 잘못된거였..

Servlet & Jsp 2021.01.18
반응형