DB 8

데이터베이스 종류 와 선택(PostgreSQL,MySQL,MongoDB,Redis,Elasticsearch,Cassandra,Neo4j)

왜 데이터베이스 선택이 중요할까요?데이터베이스는 애플리케이션의 근간을 이루는 핵심 요소입니다. 잘못된 선택은 나중에 돌이키기 어려운 문제를 초래할 수 있습니다. 예를 들어, SNS 서비스를 만든다고 가정해보겠습니다. 관계형 데이터베이스만을 고집하다가 나중에 대용량 트래픽을 감당하지 못하는 상황이 발생할 수 있습니다. 반대로, NoSQL을 선택했는데 데이터의 일관성이 중요해지는 경우도 있을 수 있죠.  데이터베이스의 종류와 특징관계형 데이터베이스 (RDBMS)PostgreSQL과 MySQL은 가장 널리 사용되는 관계형 데이터베이스입니다. 이들은 데이터의 일관성과 무결성이 중요한 상황에서 탁월한 선택이 됩니다.PostgreSQL기업용 데이터베이스의 강자입니다. 복잡한 쿼리 처리, 트랜잭션 관리가 필요한 금융..

DB 2024.11.27

Hibernate 란?? (주요특징, 아키텍쳐, 장단점 등)

1. Hibernate의 기본 개념 🌟 실생활 비유:통역사가 두 나라 사람의 대화를 돕는 것처럼Hibernate는 Java/Kotlin 객체와 데이터베이스 사이의 '통역사' 역할1.1 ORM이란?정의: Object-Relational Mapping의 약자역할: 객체 지향 프로그래밍과 관계형 데이터베이스 사이의 다리 역할작동 방식: 자바/코틀린 객체를 데이터베이스 테이블로 자동 매핑1.2 실생활 비유레스토랑 시스템으로 비유하면:테이블(Table) = 메뉴 카테고리로우(Row) = 개별 메뉴 항목컬럼(Column) = 메뉴의 속성(이름, 가격, 설명 등)Hibernate = 주방과 홀을 연결하는 서빙 직원 2. Hibernate 아키텍처 🏗️2.1 주요 컴포넌트 Session Factory ..

DB 2024.11.23

pk 2개, 여러개 설정 - SQLGate

들어가며 내가 이번에 만든 내용은 스팸번호 등록이다. 여기서 이야기할 내용은 SQL 쪽만 이번에는 할 생각이다. 내용은 카테고리별 전체별을 각각 게이트웨이에서 해당 데이터의 컬럼을 보고 다른 서버의 파일에다가 내용을 자동으로 작성하게 하여 디비와 게이트웨이 파일에 작성하는 내용이다. 카테고리별 전체별 번호를 등록하면서 중복을제거하기 위해 나는 카테고리와 전화번호를 pk로 설정하였다. PK 2개 이상 카테고리 전화번호 사과 010 - (O) 사과 010 - 무결성 제약조건 위반 (X) 사과 011 - (O) 바나나 011 - (O) 이런식으로 중복을 판별할 생각이였다. 기존에 만든 테이블에 ALTER ADD 를 사용해서 설정을 해주었다. 위 방법을 사용하면 PK1, PK2, PK..... 이런식으로 테이블..

DB 2023.09.26

SQL 시퀀스란 시퀀스 만들기(SQLGate)

시퀀스의 개념 시퀀스는 정수 값을 생성하는 객체로, 데이터베이스에서 유일한 값을 생성할 때 사용된다. 주로 테이블의 기본 키(primary key)나 다른 열(column)의 값에 사용되며, 중복 없는 고유한 값을 생성한다. 시퀀스의 장단점 장점: 고유성 보장: 시퀀스를 사용하면 중복된 값이 생성되지 않으므로 데이터의 정합성을 유지할 수 있다. 성능 향상: 응용 프로그램에서 값을 생성하는 비용을 절약하고 데이터베이스에서 효율적으로 값을 생성할 수 있다. 확장성: 다수의 클라이언트가 동시에 시퀀스를 사용해도 고유한 값을 생성할 수 있어 다중 사용자 환경에서 유용. 단점: 데이터베이스 종속성: 시퀀스는 데이터베이스 종류에 따라 구문이 다르며, 데이터베이스 종속성을 가져올 수 있다. 재설정 문제: 시퀀스가 최..

DB 2023.09.25

MySQL 계정관리

/* MySQL 계정관리 - MySQL 8.0 Commamd Line Client 실핼 - 비밀번호 1234 - show databases; - create database test; - Database 사용자 생성 @'localhost' : 해당 컴퓨터에서만 접근이 가능 @'%' : 모든 클라이언트에c서 접근이 가능 create user '계정명'@'loacalhost' IDENTIFIED BY '비밀번호'; create user '계정명'@'%' IDENTIFIED BY '비밀번호'; - Database 사용자 권한 생성 grant all privileges on : 모든 데이터베이스의 모든 테이블에 대한 권한 부여(*.* : 모든 테이블) grant all privileges on *.* to '계..

DB/MySQL 2022.10.17

데이터베이스 CRUD

use aidev; # 데이터 수정 # update 테이블명 Set 필드명1 = 값1, 필드명2 = 값2.... -- 전체 값이 변경되는 문제가 발생 # update 테이블명 Set 필드명1 = 값1, 필드명2 = 값2.... where 조건절 -- 해당 원하는 부분만 변경하기 위해 where을 사용 # To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect. 0.000 sec # 메뉴 -> edit -> preference -> SQL Editor -> safe updates 테츠 없앰 select * from tb_member; update tb_member set mem_zipcode ='12345'; up..

DB/MySQL 2022.10.13

데이터베이스 테이블

# 한 줄 주석문 -- 한 줄 주석문 /* 여러 줄 주석문 ... */ # 데이터베이스 확인하는 방법 show databases; # 데이터베이스 생성 법 # create database 데이터베이스명; create database aidev; #데이터베이스 삭제 # drop database 데이터베이스명; drop database aidev; # 데이터베이스 선택 # use 데이터베이스명 use aidev; # 테이블 확인 # desc 테이블명 desc tb_member; # 테이블 삭제 # drop table 테이블 명 drop table tb_member; # 테이블 필드 추가 # alter table 테이블명 add 컬럼명 타입 제약조건 alter table tb_member add mem_poi..

DB/MySQL 2022.10.12

데이터베이스 기본

1. DataBase(데이터 베이스) - Data : 자료 - DataBase : 저장소, 데이터를 통합하여 관리하는 집합체 // 자바에서 데이터를 저장하는 경우 내가 저장한 파일인지 확인이 어렵다는 경우가 생겨 중복 데이터가 발생할 수 있다. // 오름/내림 차순 정렬간 자바에서는 정렬하기 어렵지만 DataBase에서는 간편하게 할 수 있다으며 관리가 편하다. - DBMS(Database Management System, 데이터베이스 관리 시스템) 데이터베이스를 관리해주는 소프트웨어 ✔ DBMS를 사용하는이유 - 중복된 데이터를 제거 - 효율적인 데이터를 처리 - 자료를 구조화시킬 수 있음 - 다양한 프로그램을 사용하는 사용자들과 데이터를 공유 MySQL 다운로드 1. https://www.mysql...

DB/MySQL 2022.10.12