예제에 쓰이는 'DUAL'테이블은 SQL 쿼리를 작성할 때 특정 데이터를 검색할 필요 없이, 오로지 표현식의 값을 계산하거나 데이터베이스 함수를 실행하기 위해 사용하는 가상 테이블이라고 합니다.하나의 더미 행만을 포함하고 있어서, 테스트 목적이나, DB에서 직접 계산식을 수행해야 할 때 사용한다고 합니다. 문자 관련 함수CHARACTER(ASCII 코드) : 아스키코드 -> 문자 변환select CHARACTER(65) from dual;LOWER / UPPER : 대/소문자 변환select LOWER('Hello'), UPPER('Hello') from DUAL; TRIM : 공백 제거LTRIM : 왼쪽 공백 제거select LTRIM(' Hello') from DUAL;RTRIM(문자열) : 오..
[JDBC] 트랜잭션 적용 - Connection 직접 이용 JDBC 코드를 직접 짤 때 트랜잭션을 이용하는 방법이다. 비즈니스 로직을 실행할 때, 하나의 커넥션 내에서 동작해야 하므로 메서드 사용 시 connection을 파라미터로 넘겨야 한다. 따라서 서비스 계층, 데이터접근 계층에 모두 Connection을 파라미터로 받아서 이용해야 한다. public void loadLotsOfData(DataList dataList) { String sql = "insert into table values ( /* ... */)"; Connection conn = null; PreparedStatement pstmt = null; try { conn = getConnection(); pstmt = conn.pr..
조인 (Join) 조인(join)은 하나의 쿼리로 두 개 이상의 테이블을 묶어서 불러오는 것을 말한다. Join은 크게 inner, left, right, outer join으로 나뉜다. INNER JOIN 두 개의 테이블 간의 교집합을 나타낸다. A 테이블과 B 테이블에서 조건을 만족하는 row만 조회한다. SELECT * FROM TableA A INNER JOIN TableB B ON A.key = B.key LEFT OUTER JOIN 왼쪽 테이블 A를 기준으로 오른쪽 테이블 B의 일치하는 부분의 레코드와 함께 출력된다. 만약 테이블 B에 일치하는 항목이 없으면 해당 값은 null로 출력된다. A 테이블의 데이터가 모두 출력되지만, 조건에 만족하는 경우 B 테이블의 데이터도 출력되고, 조건에 만족..
Redis 설치 https://redis.io/docs/install/install-redis/install-redis-on-linux/ Install Redis on Linux How to install Redis on Linux redis.io 위의 Redis 공식 사이트에서 설치할 수 있다. Window의 경우 ubuntu 리눅스 서버 설치 후에 사용하는 것을 추천한다. Redis 실행 redis 실행 명령어 ~$ redis-server 위와 같이 6379 port로 redis가 실행된다. Redis client redis client 실행 명령어 ~$ redis-cli 기본 명령어 SET (key) (value) hello - world의 key value 쌍을 생성한다, GET (key) hel..
1. appliication.yml 파일에 아래와 같이 데이터소스 설정 spring: datasource: url: jdbc:h2:mem:test username: sa password: driverClassName: org.h2.Driver (application.properties) spring.datasource.driver-class-name=org.h2.Driver spring.datasource.url=jdbc:h2:mem:test spring.datasource.username=sa spring.datasource.password= 2. 서버 구동 후 로그 확인 /h2-console url로 db 접근 가능 3. localhost:8080/h2-console 접근 설정한 url로 JDBC U..
ALTER TABLE ALTER TABLE을 여러가지 테이블 속성을 변경할 수 있다. (예제) FOREIGN KEY 추가 ALTER TABLE department ADD FOREIGN KEY(leader_id) references EMPLOYEE(id) on update CASCADE on delete SET NULL; attribute 관련 1) attribute 추가 ALTER TABLE employee ADD FOREIGN KEY(leader_id); 2) attribute 이름 변경 ALTER TABLE employee RENAME COLUMN phone TO phoneNumber; 3) attribute 타입 변경 ALTER TABLE post MODIFY COLUMN writerId VARCH..
1. JDBC 드라이버 다운 MySQL 드라이버를 공식 웹사이트에서 다운로드한다. 이유는 모르겠지만, MariaDB 사용 시에도 MySQL 드라이버를 사용해야 하는 것 같다. 아래의 공식 사이트에서 다운로드할 수 있다. (공식 사이트) https://dev.mysql.com/downloads/connector/j/ (Window) Select Operating System... Platform Indepentent 선택 아래의 Zip Archive 다운 2. connector. jar 파일 업로드 압축을 풀어서 파일을 열면 아래와 같은 파일, 폴더가 있다. 그중에 mysql-connector-j-8.1.0.jar 파일을 프로젝트 빌드 경로에 추가한다. 프로젝트 아래에 lib(라이브러리) 폴더를 만들고 그..
H2 데이터베이스 사이트 https://www.h2database.com 1. 홈페이지 - Download - All Downloads - Archive Downloads 2. spring project의 H2 라이브러리와 버전 맞추기 2.1.214 인것을 확인할 수 있다 3. 윈도우의 경우 설치 후 h2.bat or h2w.bat 실행 4. h2 console이 뜨면 완료 최초 한번 : jdbc:h2:~/test 이후부터는 jdbc:h2:tcp://localhost/~/test로 접속 C - 사용자 - user - test.mv.db 파일 생성 확인