Database
강사: 생활코딩 이고잉님
🟦 Database
- 데이터를 저장, 관리하는 전문적인 소프트웨어
◼️관계형 데이터베이스 대표 제품
- ORACLE, Mysql
🟨 PostgreSQL
- 오픈 소스: 오픈 소스 데이터베이스이며 커뮤니티의 기여로 지속적인 개선과 발전이 이루어짐.
- 표준 준수: SQL 표준을 충실히 따르며 다양한 확장 기능과 프로시저를 지원하여 폭넓은 호환성을 제공함.
- 확장성: 트리거, 저장 프로시저, 사용자 정의 데이터 타입, 사용자 정의 함수 등을 지원됨.
- ACID 준수: ACID(Atomicity, Consistency, Isolation, Durability) 속성을 준수하여 데이터의 일관성 및 무결성을 보장함.
- 강력한 데이터 타입 지원: JSON, HSTORE, UUID, 배열 등의 다양한 데이터 타입을 기본으로 지원함.
- 확장 모듈: PostGIS(지리정보 시스템), Citus(분산 데이터베이스), pg_partman(파티셔닝 관리) 등 다양한
확장 모듈을 통해 기능을 확장할 수 있음.
🟩 supabase
- 공식 홈페이지: https://supabase.com
- PostgreSQL 기반: 데이터베이스로 PostgreSQL을 사용하여 고급 SQL 기능과 확장성을 제공함.
- 실시간 기능: 데이터 변경 사항을 실시간으로 반영하는 기능을 제공함.
- 인증, 권한 관리: 다양한 인증 방식(이메일, OAuth, Magic Link 등)을 제공하고, 사용자 역할 기반의 권한 관리를 지원함.
- 자동 API 생성: 테이블을 생성하면 자동으로 RESTful API를 생성하여 *CRUD 작업을 쉽게 할 수 있음.
- 스토리지: 파일 업로드 및 관리를 위한 스토리지 기능을 제공함.
- GraphQL 지원: REST 외에도 GraphQL을 통해 데이터를 조회하고 조작할 수 있음.
- 확장 가능: 기존 PostgreSQL의 확장 기능을 그대로 활용할 수 있음.
- 오픈 소스: 커뮤니티 중심으로 발전하며 자유롭게 소스 코드를 사용할 수 있음.
* CRUD: Create Read Update Delete
🟧 SQL
- Structure Query Language: 관계형 데이터베이스에서 데이터를 다루기 위해 고안된 언어
▪️ Create: insert
▪️ Read: select
▪️ Update: update
▪️ Delete: delete
1. 표 만들기
CREATE TABLE
topics (
id BIGINT PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
title TEXT NOT NULL,
body TEXT NULL,
author_name TEXT NOT NULL,
author_job TEXT,
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);
2. 행 추가하기
INSERT INTO topics (title, body, author_name, author_job, created_at)
VALUES ('html', 'html is …', 'egoing', 'programmer', CURRENT_TIMESTAMP);
3. 행 읽기
SELECT * FROM topics;
SELECT id, title, body FROM topics;
SELECT id, title, body FROM topics WHERE id = 1;
4. 행 수정
UPDATE topics SET title = 'css3' WHERE id = 2;
5. 행 삭제
DELETE FROM topics WHERE id = 5;
※ 추가 명령어
- 기존 동일한 테이블(topics) 제거
DROP TABLE IF EXISTS public.topics;
🟪 온라인 강의 목록
▪️ PostgreSQL 입문 : https://www.youtube.com/watch?v=dKuLA5BGPTY&t=261s
▪️ Supabase 입문 : https://www.youtube.com/watch?v=FbLzqoENTsg
▪️ JOIN : https://opentutorials.org/course/3884
▪️ 관계형 데이터 모델링 : https://opentutorials.org/course/3883
출처: AI Hub 교육과정 - WEB+AI (위 내용이 문제가 된다면 댓글에 남겨주세요. 바로 삭제조치하도록 하겠습니다.)
'Programming 개발은 구글로 > 기타 정보' 카테고리의 다른 글
[WEB+AI] 8일차 파이썬 데이터 분석 (3) | 2024.10.23 |
---|---|
[WEB+AI] 7일차 Gradio + PostgreSQL로 메모장 만들기 (2) | 2024.10.22 |
[WEB+AI] 6일차 복습 (4) | 2024.10.22 |
[WEB+AI] 4일차 Gradio (0) | 2024.10.21 |
[WEB+AI] 3일차 파이썬 2/2 (0) | 2024.10.21 |
댓글