안녕하세요!
[ SQLD ] TCL(Transaction Control Language)
TCL TCL(Transaction Control language)는Transaction을 제어하는 명령어로COMMIT, ROLLBACK, SAVEPOINT 등이 있다.여기서 TRANSACTION이란더 이상 쪼개질 수 없는 업무 처리의 단위이다. 특징설명원자성(Atomicity)Transaction이 묶여 있는 동작들은 모두 성공하거나 실패해야 함일관성(Consistency)Transaction이 완료된 이후에도 계산된 결괏값 등, DB의 Data에 일관성이 있어야 함고립성(Isolation)하나의 Transaction은 한 고객에게 할당된 제품은 구매 불가능한 것처럼 고립되어 수행되어야 함지속성(Durability)Transaction이 성공적으로 수행되었을경우, Transaction이 변경한 Data..
더보기[ SQLD ] SQL 삭제 문(DROP, TRUNCATE, DELTE) 비교
DROP TABLETRUNCATE TABLEDELETE FROMDDLDDL(+DML)DMLAuto CommitAuto CommitUser CommitROLLBACK 불가능ROLLBACK 불가능Commit 전에 ROLLBACK 가능Table의 모든 Data 삭제Table의 모든 Data 삭제Table의 모든 Data 삭제Disk 초기화(= 로그 제거)Disk 초기화(= 로그 제거) Disk 초기화(= 로그 유지) Schema 정의까지 모두 삭제Table Schema 구조 유지Table Schema 구조 유지 [ SQLD ] DML(Data Manipulation Language)DML DML(Data Manipulation Language)은SELECT, INSERT, UPDATE, DELETE 등으로..
더보기[ SQLD ] DML(Data Manipulation Language)
DML DML(Data Manipulation Language)은SELECT, INSERT, UPDATE, DELETE 등으로DB 내의 Data를 조작하는 데에 사용돤다.DML은 Host 프로그램 속에 삽입되어 사용하기에,데이터 부속어(Data Sub Language)라고도 불리우기도 한다. INSERT INSERT INTO TESTTABLE (ID, NAME, AGE, COUNTRY) VALUES(1, 'DERRIK', 32, 'KOREA'); UPDATE UPDATE TESTTABLE SET AGE = 23 WHERE NAME = 'DERRIK'; DELETE DELETE FROM TESTTABLE WHERE NAME = 'DERRIK'; SELECT SELECT DISTINCT AGE FROM TE..
더보기[ SQLD ] DDL(Data Definition Language)
DDL DDL(Data Definition Language)은Schema와 Domain, Table, View, Index를 정의 및 변경, 제거할 때 사용한다.DDL의 경우, Auto COMMIT 되기 때문에DDL이 수행되면 ROLLBACK이 되어도 데이터는 COMMIT 된다. CREATE TABLE AS CREATE TABLE TESTTABLE AS SELECT COLUMN1, COLUMN2, ... FROM EXAMPLETABLE WHERE ... CREATE TABLE AS 문장을 사용하는 경우,테이블의 구조를 복하기 때문에 별도로 작성할 필요가 없다.다만, NOY NULL과 일부 제약 조건만 복사가 된다.PK, FK, UNIQUE, CHECK 등의 제약 조건은 복사되지 않으므로 다시 적용해..
더보기[ SQLD ] Row Migration / Row Chaining / Partitioning
로우 마이그레이션 로우 마이그레이션은데이터 블록에서 수정이 발생 하였을 때수정된 데이터를 해당 블록에 저장하지 못하고다른 블록에 있는 빈 공간을 찾아 저장하는 방식이다. 이순신최민식거북선-----------------------------------이순신강강술래 "이순신"을 "강강술래"으로 UPDATE 하였을 때행의 길이가 증가하면서 저장 공간이 부족해진다.이때 원래 정보를 기존 블록에 남겨두고실제 데이터는 다른 블록에 저장하게 되는데,데이터 조회 시 기존 블록에서 주소를 먼저 읽고 다른 블록을 찾아야 하므로성능이 감소될 수밖에 없어진다. 로우 체이닝 로우 체이닝이란,행 길이가 길어서 데이터 블록 하나에 데이터를 모두 저장하지 않고,두 개 이상의 블록에 걸쳐서 하나의 로우를 저장하는 형태이다. O O..
더보기-
[ SQLD ] TCL(Transaction Control Language) TCL TCL(Transaction Control language)는Transaction을 제어하는 명령어로COMMIT, ROLLBACK, SAVEPOINT 등이 있다.여기서 TRANSACTION이란더 이상 쪼개질 수 없는 업무 처리의 단위이다. 특징설명원자성(Atomicity)Transaction이 묶여 있는 동작들은 모두 성공하거나 실패해야 함일관성(Consistency)Transaction이 완료된 이후에도 계산된 결괏값 등, DB의 Data에 일관성이 있어야 함고립성(Isolation)하나의 Transaction은 한 고객에게 할당된 제품은 구매 불가능한 것처럼 고립되어 수행되어야 함지속성(Durability)Transaction이 성공적으로 수행되었을경우, Transaction이 변경한 Data.. 더보기
-
[ SQLD ] SQL 삭제 문(DROP, TRUNCATE, DELTE) 비교 DROP TABLETRUNCATE TABLEDELETE FROMDDLDDL(+DML)DMLAuto CommitAuto CommitUser CommitROLLBACK 불가능ROLLBACK 불가능Commit 전에 ROLLBACK 가능Table의 모든 Data 삭제Table의 모든 Data 삭제Table의 모든 Data 삭제Disk 초기화(= 로그 제거)Disk 초기화(= 로그 제거) Disk 초기화(= 로그 유지) Schema 정의까지 모두 삭제Table Schema 구조 유지Table Schema 구조 유지 [ SQLD ] DML(Data Manipulation Language)DML DML(Data Manipulation Language)은SELECT, INSERT, UPDATE, DELETE 등으로.. 더보기
-
[ SQLD ] DML(Data Manipulation Language) DML DML(Data Manipulation Language)은SELECT, INSERT, UPDATE, DELETE 등으로DB 내의 Data를 조작하는 데에 사용돤다.DML은 Host 프로그램 속에 삽입되어 사용하기에,데이터 부속어(Data Sub Language)라고도 불리우기도 한다. INSERT INSERT INTO TESTTABLE (ID, NAME, AGE, COUNTRY) VALUES(1, 'DERRIK', 32, 'KOREA'); UPDATE UPDATE TESTTABLE SET AGE = 23 WHERE NAME = 'DERRIK'; DELETE DELETE FROM TESTTABLE WHERE NAME = 'DERRIK'; SELECT SELECT DISTINCT AGE FROM TE.. 더보기
-
[ SQLD ] DDL(Data Definition Language) DDL DDL(Data Definition Language)은Schema와 Domain, Table, View, Index를 정의 및 변경, 제거할 때 사용한다.DDL의 경우, Auto COMMIT 되기 때문에DDL이 수행되면 ROLLBACK이 되어도 데이터는 COMMIT 된다. CREATE TABLE AS CREATE TABLE TESTTABLE AS SELECT COLUMN1, COLUMN2, ... FROM EXAMPLETABLE WHERE ... CREATE TABLE AS 문장을 사용하는 경우,테이블의 구조를 복하기 때문에 별도로 작성할 필요가 없다.다만, NOY NULL과 일부 제약 조건만 복사가 된다.PK, FK, UNIQUE, CHECK 등의 제약 조건은 복사되지 않으므로 다시 적용해.. 더보기
-
[ SQLD ] Row Migration / Row Chaining / Partitioning 로우 마이그레이션 로우 마이그레이션은데이터 블록에서 수정이 발생 하였을 때수정된 데이터를 해당 블록에 저장하지 못하고다른 블록에 있는 빈 공간을 찾아 저장하는 방식이다. 이순신최민식거북선-----------------------------------이순신강강술래 "이순신"을 "강강술래"으로 UPDATE 하였을 때행의 길이가 증가하면서 저장 공간이 부족해진다.이때 원래 정보를 기존 블록에 남겨두고실제 데이터는 다른 블록에 저장하게 되는데,데이터 조회 시 기존 블록에서 주소를 먼저 읽고 다른 블록을 찾아야 하므로성능이 감소될 수밖에 없어진다. 로우 체이닝 로우 체이닝이란,행 길이가 길어서 데이터 블록 하나에 데이터를 모두 저장하지 않고,두 개 이상의 블록에 걸쳐서 하나의 로우를 저장하는 형태이다. O O.. 더보기
- [ SAPUI5 ] DynamicPage 사용 방법 경기가 어려워서인지 프로젝트가 딱히 없는 상황이다. 걱정할 거까지는 없지만, 놀고 있을 순 없으니 예전에 했던 것들을 복기한다는 마인드로 이것저것 리뷰를 해보려고 한다. 2월말 즈음에는 짧은 프로젝트에 투입되기도 하기에 여러 가지 경험치를 축적해두자! DynamicPage sap.f.DynamicPage는 SAPUI5의 sap.f 라비으러리에 혹하는 컨트롤이다.Fiori 2.0/3.0 디자인 가이드라인에 따라 동적 페이지 레이아웃을 제공한다. 속성설명headerExpanded초기 Header 부분이 확장되어 있는 상태인지 여부 (default : true)toggleHeaderOnTitleClickTitle 클릭 시, Header가 확장 및 축소되는지 여부PreserveHeaderStateOnScroll.. 더보기
-
[ Java ] Windows에서 Docker 사용하기 Docker-desktop은 원래 Docker가 다운되면 저장된 데이터를 날려버린다.하지만 위와 같이 로컬에서 'mysql' 파일을 생성하여여기에 데이터를 저장하면 docker가 다운되더라도 데이터가 날라가지 않게 된다. docker-compose up -d 명령어를 입력하면로컬에 있는 파일로 db를 실행하게 된다.docker-compose up -d 혹시나 permission 에러가 난다면, sudo chmod 666 /var/run/docker.sock명령어를 입력해 준다.sudo chmod 666 /var/run/docker.sock obsolute 에러가 난다면 docker-compose.yaml 파일에 있는 version 정보를 삭제해야 한다.일정 버전 이상부터는 version 정보가 불필요해.. 더보기
-
[ HANA ] How to Connect from HANA to PostgreSQL(1) Deploy to HANA Cloud Create entity SAP BTP BAS 혹은 Visual Studio에서 CAP 프로젝트를 생성하여위와 같이 엔터티를 설정한다.본인이 원하는 대로 자유롭게 엔터티를 생성하면 된다. 서비스에 정의한 엔터티를 추가한다. Deploy to HANA BTP에 생성되어 있거나 구독하고 있는 HANA Cloud에 엔터티 정보,즉 레코드로 저장되는 테이블을 배포하기 위해연결되어 있는 계정 정보로 접슨하기 위해cf login을 한다. cds deploy --to hana로 HANA Cloud에 서비스를 배포한다. cds watch --profile hybrid로 로컬 서버에 접속한다. Create PostgreSQL Instance BTP에 접속하여Postgre.. 더보기