SQL과 파이썬을 둘 다 학습했지만 연결해서 사용해본 경험은 없었다. 그래서 이 강의를 보자마자 신청을 해야겠다라고 생각이 바로 들었다 ㅎㅎ 짧은 강의시간이지만 정말 핵심만 알차게 넣어둔 강의, 지금 리뷰를 시작하겠다 sql과 python을 연결해서 사용하려면 mysql.connector를 설치해야한다. 이 모듈의 역할은 말 그대로 데이터베이스를 연결해 주는 것으로 위 코드와 같이 관련 정보를 입력해서 데이터베이스에 접근한다.host = 데이터베이스 서버 주소user = 데이터베이스 사용자 이름password = 데이터베이스 비밀번호database = 접속하고자 하는 데이터베이스 쿼리 실행에 관한 메서드들cursor.execute(): 이 메서드는 SQL 쿼리를 실행하는 데 사용, 변수안에 실행하려는 S..
데이터베이스 관리 시스템에서 데이터의 무결성을 유지하고 효율적으로 관리하기 위해 다양한 키(Key) 개념을 사용한다. 이때 후보키 (Candidate Key), 기본키(Primary Key), 슈퍼키(Super Key), 고유키(Unique Key), 외래키(Foreign Key)가 주로 활용되는데 이 개념들을 이해하기 위해 학생 정보를 관리하는 데이터베이스를 예로 들어 설명해 보겠다.후보키 (Candidate Key)유일성과 최소성을 만족하는 키기본키(Primary Key)기본키는 테이블에서 각 행(Row)의 고유한 식별자로 사용, 기본키로 설정된 필드는 중복된 값을 가질 수 없으며 NULL 값을 허용하지 않는다. 예를 들어, 학생 정보를 관리하는 테이블에서는 '학번'이 기본키로 설정될 수 있다. 학번..
글 주제로 우려먹고 있는 REDO와 UNDO, 마지막으로 둘을 비교해보고자 한다 1. 목적:UNDO: 이미 수행된 변경사항을 취소하고 데이터를 이전 상태로 되돌리는 데 목적이 있다. 이를 통해 오류나 잘못된 데이터 수정 작업을 되돌릴 수 있다.REDO: 시스템 장애나 다른 예기치 않은 사건 후 데이터베이스를 회복하는 과정에서 이미 커밋된 트랜잭션의 변경사항을 다시 적용하는 데 목적이 있다. 이는 데이터의 일관성과 안정성을 보장한다.2. 작동 원리:UNDO: 데이터베이스는 변경사항을 로그 파일에 기록한다. UNDO 작업을 할 때 이 로그 파일을 참조하여 변경 전 데이터 상태로 되돌린다.REDO: 데이터베이스는 커밋된 트랜잭션의 변경사항을 REDO 로그 파일에 기록한다. 시스템 재시작 후 이 로그 파일을 사..
데이터를 관리하면서 가장 우선시되어야 하는 것 중 하나는 데이터의 안정성과 무결성을 유지하는 것이다. 앞서 UNDO에 대해 알아보았는데, 이번에는 데이터베이스에서 또 다른 중요한 개념인 'REDO'에 대해 이야기해보겠다.REDO의 개념REDO는 시스템 장애나 다른 예기치 못한 사건으로부터 데이터베이스를 복구하는 과정에서 사용되는 용어이다. 특히, 데이터베이스가 비정상적으로 종료된 후 다시 시작될 때 REDO 로그를 사용하여 변경사항을 다시 적용하는 과정을 말한다. 이는 데이터의 일관성과 무결성을 보장하는 데 필수적인 작업이다.REDO의 원리REDO의 기본 원리는 데이터베이스의 변경사항을 로그 파일에 기록하는 것이다. 이 로그 파일은 데이터베이스가 비정상적으로 종료된 경우에도 보존된다. 시스템이 다시 시작..
데이터베이스에서 작업을 하다 보면 실수로 잘못된 데이터를 입력하거나 중요한 정보를 삭제하는 등의 사고가 발생할 수 있다. 이러한 상황에서 데이터를 원상태로 복구하는 것은 매우 중요한 작업이다. 오늘은 데이터베이스에서 실수로 발생한 변경사항을 되돌리는, 즉 'UNDO' 작업에 대해 알아보겠다.UNDO의 개념UNDO는 데이터베이스에서 실수로 발생한 변경사항을 취소하고 이전 상태로 되돌리는 작업을 의미한다. 이는 무언가 잘못되었을 때 데이터의 일관성과 정확성을 유지하기 위해 필수적인 기능이다. 대부분의 관계형 데이터베이스 관리시스템(RDBMS)에서는 이러한 UNDO 기능을 지원한다.UNDO의 원리UNDO 작업을 가능하게 하는 기본 원리는 '로그 파일'이다. 데이터베이스 시스템은 모든 변경사항(INSERT, U..
sqld를 공부하면서 계산법을 보고 뭐지싶어서 내용을 찾아보았다. 오라클에선 다음과 같이 시간을 표현한다. SELECT sysdate, (sysdate-1/24/60) FROM dual; -- 1분 전SELECT TO_CHAR(sysdate + 1/24, 'YYYYMMDD HH24:MI:SS') FROM dual; -- 1시간 후값을 이용1/24 : 1시간 (1일을 24시간으로 나누기)1/24/60 : 1분 (1일/24시간=1시간, 1시간/60분=1분)1/24/6 : 10분 (1일/24시간=1시간, 1시간/6분=10분)1/24/60/6 : 10초 (1일/24시간=1시간, 1시간/60분=1분, 1분/6초=10초)1.5/24 : 1시간 30분 (1.5일/24시간=1시간 30분)1.5/24/6 : 15분 (..