* 앞서 만들어 두었던 테이블([MSSQL] 테이블 생성 및 삭제) 기준 insert 문은 간단하다. 테이블의 컬럼명과 컬럼 순서에 맞춰서 데이터만 잘 입력해주면 된다. INSERT INTO EVENT ( ID, TITLE, START_AT, END_AT, ACTIVATED, REG_DATE ) VALUES ( #{id}, #{title}, #{startAt}, #{endAt}, #{activated}, GETDATE() ) 여기서 REG_DATE는 삽입한 날짜로, GETDATE()를 입력해주면 현재시간이 들어간다. 그런데 삽입된 날짜를 보면 시간이 현재시간과 다르게 들어간 경우가 있는데 이는 GETDATE() 날짜함수가 SQL 서버의 시간을 기준으로 하기 때문에 서울을 기준으로 하면 서울 현지시간과 9..
* 앞서 만들어 두었던 테이블([MSSQL] 테이블 생성 및 삭제) 기준 기본 검색 쿼리는 아래와 같다. SELECT ID, EVENT_ID, PRODUCT, ORIGIN_PRICE, SALE_PRICE, ACTIVATED, UPDATER_MEMBER_NUMBER, UPDATED_AT, CREATOR_MEMBER_NUMBER, CREATED_AT FROM EVENT_DETAILS 여기서 PRODUCT라는 컬럼에는 기본적으로 저장될 때는 소문자로, 읽어올 때는 대문자로 불러와야할 때 UPPER()를 사용할 수 있다. SELECT ID, EVENT_ID, UPPER(PRODUCT) AS PRODUCT, ORIGIN_PRICE, SALE_PRICE, ACTIVATED, UPDATER_MEMBER_NUMBER,..
* 앞서 만들어 두었던 테이블([MSSQL] 테이블 생성 및 삭제) 기준 기본적인 테이블 조회 쿼리는 아래와 같다. SELECT * FROM EVENT SELECT ID, TITLE, START_AT, END_AT, REG_DATE FROM EVENT 첫번째 쿼리의 *은 전체 컬럼 값을 가지고 오고, 두번째 쿼리는 각 컬럼 모두를 선택하였으므로 두 쿼리는 같은 결과를 출력한다. 여기에서 게시판 리스트를 페이지네이션으로 처리한 경우에 MSSQL에서는 생각보다 쉽게 페이지 구현이 가능하다. 오프셋과 페이지 사이즈만 넘겨주면 알아서 해당 값들만 불러온다. OFFSET #{offset} ROWS FETCH NEXT #{pageSize} ROWS ONLY 여기서 오프셋이란, 시작점을 의미한다. 오프셋이 0이면 0..
팀 이동 후 처음 맡은 업무가 이벤트 데이터베이스를 생성해서 CRUD하는 작업이라 이벤트 테이블을 생성하는 작업이 필요하다. CREATE TABLE dbo.EVENT( ID varchar(15) NOT NULL PRIMARY KEY, TITLE varchar(1000) NOT NULL, START_AT datetime NOT NULL, END_AT datetime NOT NULL, REG_DATE datetime NOT NULL DEFAULT GETDATE() ) CREATE TABLE dbo.EVENT_DETAILS( ID varchar(15) NOT NULL PRIMARY KEY, EVENT_ID varchar(15) NOT NULL, PRODUCT varchar(15) NOT NULL, ORIGIN..