본문 바로가기

프로그래밍/Database

[DB] Upsert 오늘 회사에서 Upsert란 용어를 알게되어 찾아보게 되었다. https://wiki.postgresql.org/wiki/UPSERT definition 설명을 보면 " "UPSERT" is a DBMS feature that allows a DML statement's author to atomically either insert a row, or on the basis of the row already existing, UPDATE that existing row instead, while safely giving little to no further thought to concurrency. One of those two outcomes must be guaranteed, regardless of ..
[mssql2008] db log 용량 줄이기 mssql 2008버전 use massive_world_db; EXEC SP_HELPFILE; ALTER DATABASE massive_world_db SET RECOVERY SIMPLE GO DBCC SHRINKFILE(massive_world_db_log, 1000); GO ALTER DATABASE massive_world_db SET RECOVERY FULL; GO
Index(mysql) 정의색인, 조회할 때 원하는 행을 빠르게 찾을 수 있게 준비해둔 데이터를 말한다. 사용해야 하는 경우데이터 양이 많고 검색이 변경보다 빈번한 경우인덱스를 걸고자 하는 필드의 값이 다양한 값을 가지는 경우 종류primary : 중복되지 않은 유일 키- where문을 이용하여 데이터를 조회할 때 가장 고속으로 데이터를 가져온다.- 테이블마다 딱 하나의 primary key를 가질 수 있다. unique : 중복을 허용하지 않는 유일한 키- 고속으로 데이터를 가져올 수 있다.- 여러개의 unique key를 지정할 수 있다. normal : 중복을 허용하는 인덱스- primary, unique보다 속도가 느리다.- 여러개의 키를 지정할 수 있다. full text : 검색 엔진과 유사한 방법으로 자연 언어를 ..
데이터베이스 고급 기능 트렌젝션정의트랜젝션(Transaction)은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업 단위또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다. 트랜젝션의 특징데이터의 무결성을 위해 DBMS의 트랜잭션이 가져야할 특징이 있다.Atomicity(원자성) - 모두 반영 되거나, 전혀 반영되지 않거나. Consistency(일관성) - 트랜잭션이 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변환된다.Isolation(독립성) - 둘 이상의 트랜잭션이 동시에 실행중에 하나가 실행 될 때 다른 트랜잭션의 연산에 끼어들 수 없다.Durability(영속성) - 성공적으로 완료된 트랜잭션의 결과는 영구적으로 반영되어야 한다. Commit, Rollback 연산Com..
저장프로시저(MS-SQL 환경) 정의저장 프로시저(Stored Procedure)란 SQL Server에서 제공되는 프로그램이 기능. 저장 프로시저 개요어떠한 동작을 일괄 처리하는 용도로 사용된다. 자주 사용되는 일반적인 쿼리를 모듈화 시켜 필요할 때마다 호출한다. 예시 exec usp_users를 통해 해당 프로시저를 호출해 사용할 수 있다. 저장 프로시저의 수정과 삭제수정 - alter procedure를 사용삭제 - drop procedure 매개 변수의 사용입력 매개변수(+ 디폴트 매개변수)@입력_매개 변수+이름 데이터_형식 [= 디폴트] 디폴트 매개변수출력 매개변수@출력_매개 변수_이름 데이터_형식 OUTPUT 리턴과 에러 처리RETURN 문을 사용해 리턴 값을 받게 되면 실행한 저장 프로시저가 성공적으로 수행되었는지 또는 실..
관계형 데이터베이스 모델과 언어 관계형 데이터베이스 구조 개요개체(Entity), 관계(Relationship)를 모두 릴레이션(Relation)이라는 표(Table)로 표현한다.릴레이션은 개체를 표현하는 개체 릴레이션, 관계를 나타내는 관계 릴레이션이 있다. 관계형 데이터베이스 Releation 구조릴레이션은 데이터들의 표(Table)의 형태로 표현한 것으로 구조를 나타내는 릴레이션 스키마와실제 값들인 릴레이션 인스턴스로 구성된다. 용어튜플(Tuple)- 릴레이션을 구성하는 각각의 행을 말한다.- 속성의 모임으로 구성된다.- 파일 구조에서 레코드와 같은 의미. - 튜플의 수를 카디널리티(Cardinality) 또는 기수, 대응수라고 한다. 속성(Attribute)- 속성은 데이터베이스를 구성하는 가장 작은 논리적 단위- 파일 구조상의..
데이터 모델링과 설계 데이터 모델의 개념데이터 모델의 정의현실 세계의 정보를 컴퓨터에서 표현하기 위해 단순화 추상화하여 체계적으로 표현한 개념적 모형.추상 데이터 타입이랑 비슷한 개념인듯? 데이터 모델의 종류개념적 데이터 모델 - 정보 모델링현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정.속성들로 기술된 개체 타입, 개체들 간의 관계를 이용한 현실 세계 표현.대표적인 개념적 데이터 모델 = E-R 모델. 논리적 데이터 모델 - 데이터 모델링개념적 모델링에서 얻은 구조를 컴퓨터가 이해하고 처리할 수 있게 변환하는 과정.필드로 기술된 데이터 타입과 이 데이터 타입의 관계를 이용하여 현실 세계를 표현한다.데이터 간의 관계를 어떻게 표현하느냐에 따라 관계 모델, 계층 모델, 네트워크 모델로 구분된다. 데이터 모델에 표시할 요..
정보 시스템 정보 시스템자료와 정보자료 - 현실 세계에서 관찰이나 측정으로 단순한 사실이나 결과. 가공되지 않음.정보 - 의사 결정에 도움을 줄 수 있는 유용한 형태. 가공과 처리를 통해 얻는 결과 정보 시스템이란?조직체에 필요한 데이터를 수집, 저장해 두었다가 필요 시에 처리하여 의사결정에 유용한 정보를 생성하고 분대하는 수단. 자료 -> 가공,처리(자료 처리 시스템) -> 정보 *자료 처리 시스템 - 정보 시스템이 사용할 자료를 처리하는 서브 시스템.*종류- 일과 처리 시스템(시간, 일정량 데이터를 모아 처리)- 온라인 실시간 처리 시스템- 분산 처리 시스템(여러 대의 컴퓨터(프로세서)를 통신 회선은 연결하여 논리적으로 하나의 시스템처럼 운용하는 방식) 데이터웨어하우스(Data Warehouse)조직이나 기업체의..