전체 글 196

DBeaver)Trigger 사용하기

DBMS 보면 Trigger 메뉴가 있습니다.어디다 쓰는 것이냐면 데이터베이스에 INSERT UPDATE DELETE 하기 전에자동으로 실행하고 싶은 코드가 있으면 Trigger 메뉴 들어가서 설정해놓으면 됩니다. 그럼 정말 자동으로 실행되는데  - 데이터를 다른 테이블에 반영하고 싶을 때- 데이터 넣기 전에 데이터를 깔끔하게 정제하고 싶을 때 - 테이블 변경기록 (로그)를 다른 테이블에 저장해두고 싶을 때- 테이블의 통계를 다른 테이블에 저장해두고 싶을 때 대충 이런 경우에 사용하면 편리합니다.      테이블 2개 준비해봅시다  예를 들어 product 테이블과 counter 테이블이 있다고 칩시다.  ▲ product 테이블은 그냥 상품저장용임 상품도 하나 저장해봅시다.   ▲ 이건 counter ..

Mysql&DBeaver 2024.09.08

DBeaver)데이터베이스 필요하면 빌려쓰는 것도 (AWS)

(변경사항)올해부터 RDS를 '퍼블릭 액세스 허용'으로 사용시 Public IPv4 사용요금 명목으로 월 3달러정도 추가요금이 발생해서한 번 만들어보고 안쓰면 삭제합시다.이외엔 Azure가면 MySQL 유동서버 이런 것들도 만들기 쉬운데 IPv4 이용요금은 없고아니면 Supabase 가면 무료로 PostgreSQL 500MB 호스팅받을 수 있습니다.    강의 맨 처음에 했던 것 처럼 MySQL을 컴퓨터에 설치하면여러분 컴퓨터에서 데이터베이스를 이용할 수 있습니다.근데 개발자 마케터 등 회사 내 많은 사람들이 이용하게 하고 싶으면데이터베이스를 직접 컴퓨터에 설치하는 것 보다 AWS, GCP 같은 클라우드서비스에서 하나 호스팅받는게 훨씬 안전합니다. - 자동 백업- 자동 스케일업- 모니터링 - 로그작성 -..

Mysql&DBeaver 2024.09.08

DBeaver)돈 다루다가 큰일나기 싫으면 Transaction

데이터베이스를 너무 믿으면 안됩니다.간혹가다 INSERT, UPDATE, DELETE가 안되고 실패하는 경우가 많은데 그럼 뭐 다시 시도하면 되긴 합니다만 동시에 여러 쿼리를 실행해야하는데 그 중에 하나만 실패하는 경우여러분들 서비스 운영에 심각한 문제가 발생하는 경우가 있습니다.  예를 들어 여러분이 은행 DB를 운영하는데A 고객 -> B 고객 이렇게 1000원을 보내야한다고 칩시다. 1. 그럼 A 고객의 잔고에서 -1000을 하고 2. B 고객의 잔고에 +1000을 하면 됩니다. UPDATE 문법을 2번 쓰면 되겠군요.  근데 1번은 성공했는데 2번은 실패하면 어떻게되죠? 은행 문닫아야합니다. 문닫기 싫으면 transaction이라는 기능을 사용합시다.       Transaction 기능 위와 같은..

Mysql&DBeaver 2024.09.08