프로젝트를 하던 도중 프론트엔드 개발자도 db를 가지고 있어야 하는 상황이 필요했음.그래서 덤프를 뜨려고 했는데 pgadmin에서 db 백업하는 기능이 있다고해서 찾아봄. 백업하는 법 1. pgadmin에서 백업할 Database 우클릭 2. 저장할 백업 파일의 경로를 설정한다. 3-1. 옵션1에서 모든 Data를 선택, Blobs 해제, Don`t save에서 Owner와 privilege 선택 3-2. 그림과 같이 선택한다! 그리고 백업을 누르면!!! 4. pg_dump가 실행된거임... 사실 나는 덤프를 했던것이었다... Done 클릭하면 Backup 완료! 백업파일의 DB 가져오기 1. 빈 데이터베이스를 생성하고 우클릭 Restore 클릭! 2. 백업파일을 가져온다. 3. 다음과 같이 선택한다! ..
트리거를 사용한 게시판 프로젝트에서의 기능(트리거 사용 이유) 1. 게시판의 글을 유저들이 좋아요, 싫어요를 누를 수 있다.2. 유저들은 하나의 게시글에 하나의 좋아요, 싫어요만 표현할 수 있다. ( Toggle 기능처럼 표현 )3. 그렇게 하기 위해 Hate,Likey(like가 예약어라 likey로 하였음) 테이블을 각각 생성하였다. 1234567891011--싫어요create table tblHate( userSeq serial references tbluserinfo(userSeq), boardSeq serial references tblboard(boardSeq)); --좋아요 create table tblLikey( userSeq serial references tbluserinfo(userS..
date_trunc() 함수 trunc하면 보통 버림함수를 많이들 생각합니다. 예)- 어떤 소수자리 숫자가 들어와도.select trunc(1.23232412...) -> 1select trunc(1.99999999...) -> 1 소수점 숫자는 버리는 trunc함수입니다.사실 뒤의 숫자를 버리는 것이 아니라 0으로 만들어 버리는 것인데요.1.0000000 어떤가요? 1과 1.0000 date_trunc함수는 이 trunc함수와 아주 유사합니다. trunc함수는 무작정 숫자를 정수화하지만 특정 소수점까지는 유효하도록 표현할 수 있습니다. 예)select trunc(1.2323,2) -> 1.23select trunc(1.2323,3) -> 1.232 이처럼 말이죠. - date_trunc(text, ti..
신입으로 처음 들어간 회사에서 oracle DB말고 postgresql이라는 DB를 사용해서 Postgresql을 처음 배웠을때recursive 문을 배웠습니다. 자바의 for문과 비슷한 원리로 돌아가는 반복문인데 구조는 다음과 같습니다. recursive문의 기본 구조 12345678with recursive 뷰명 as( 초기 SQL union all(or union) 반복할 SQL(+반복을 멈출 where절 포함) )select * from 뷰명;cs 원리1. 초기 SQL을 실행하면 실행한 결과셋은 recursive문을 선언할때 기재한 뷰에 담긴다.2. 반복할 SQL의 from 절에 뷰명을 이용해서 처리하거나 한다. 이는 상황에 따라 다르지만 주로 뷰명을 from절에 두고 반복문을 돌리는 것이 일반적..