1. 이론
오전
데이터베이스 용어정리
- 데이터베이스(DB)
통합, 관리되는 테이블의 집합
- DBMS(데이터베이스 (관리)시스템)
데이터베이스를 관리하는 소프트웨어
+) 소프트웨어(soft:부드러운 + ware:제품) : 컴퓨터에게 동작방법을 지시하는 명령모음집
- 데이터베이스 도구(=Tool)
데이터 관리에 필요한 기능을 제공하는 소프트웨어
ex) Maria DB, Oracle
- 데이터베이스 서버???
DB의 데이터 관리 서비스를 제공하는 컴퓨터
+) 서버 : 클라이언트에게 데이터를 제공하는 컴퓨터
ex) 플라스크 서버
- SQL문(SQL Quary)
관계형 데이터베이스 관리 시스템에서 사용하는 명령문
+) 관계형 데이터베이스 : 데이터간의 관계파악이 쉽도록(중점을 둔) 구성된 데이터베이스
- PK(Primary key) & FK(Foreign Key)
PK는 레코드(로우)식별을 위한 왼쪽 끝의 필드, FK는 두 레코드 비교를 위해 대응 되는 PK
+) 레코드(=로우) : 행, 필드(=칼럼) : 열
데이터베이스의 객체
오라클 같은 DBMS(시스템) 데이터를 관리(CRUD) 존재하는 논리적인 저장구조
데이터베이스 객체 설명
| 테이블 | 데이터를 담고 있는 객체 |
| 뷰 | 하나 이상의 테이블을 연결해 마치 테이블인 것처럼 사용하는 객체 |
| ex) d = (a,b,c) ⇒ 알리아스 | |
| 인덱스 | 테이블에 있는 데이터를 빠르게 찾기 위한 객체 |
| 시노님 | 데이터베이스 객체에 대한 별칭을 부여한 객체 |
| 시퀀스 | 일련번호 채번을 할 때 사용되는 객체 |
| 함수 | 특정 연산을 하고 값을 반환하는 객체 = 출력만 있음 ⇒ getter |
| 프로시저 | 함수와 비슷하지만 값을 반환하지는 않는 객체 = 입력만 있음 ⇒ setter |
| 패키지 | 용도에 맞게 함수나 프로시저를 하나로 묶어 놓은 객체 ⇒ class |
데이터베이스 구축과정
- 디렉토리 만들기 ⇒ 시스템(기능) 디렉토리(.~~)
- 데이터베이스 생성
- 테이블 생성
- 데이터 입력
오후
sql 다루기
- windws터미널, 도커 설치
https://www.docker.com/products/docker-desktop/
⇒ 도커
- 터미널 명령어 입력
# 명령어 이대로만 치자
docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.6;
docker ps;
docker exec -it <부여코드> bash;
show databases;
create database mydb;
use mydb;
show tables;
create table user(id varchar(10) mrimary key, password varchar(10));
#=> 테이블 생성으로 굳이 안해도 됨
select * from user;
insert into user values ('hong', 'pass')
#=> 테이블에 column과 데이터 넣기 굳이 안해도 됨
- 하이디 설치 후 도커와 연동
그 외
문 = 식의 집합
식 = 대수와 연산자의 집합
⇒ 문 = 대수와 연산자의 집합의 집합..
DF(객체)의 시스템(기능) = FW(제공자) ⇒ CRUD(Create, Read, Update, Delete)
Table(객체)의 시스템(기능) = DB(제공자)
DF의 요소 = 메타데이터
Table의 요소 = 필드
데이터센터 vs 데이터하우스
놓친 거
큐브가 모여도 시간계념이 없으면 3차원???
데이터베이스의 서버??
플렛폼
도커 = 컨테이너
쿠버네티스
REST API
프론트엔드
파이썬세션
웹 베포
2. 코드
sql 쿼리 기본 명령문
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
# 테이블 생성 -> 데이터는 아직 안넣음
INSERT INTO Persons (PersonID, LastName, FirstName, Address, city)
VALUES (1, 'Moon', 'SJ', 'Jong-ro', 'Seoul');
# 데이터 넣기
SELECT PersonID, LastName, FirstName FROM Persons;
SELECT * FROM Persons;
# 데이터 출력
3. 하루마무리
딱 30분 정리하고..
4시 반에 잠
ㄹㅈㄷ
'비트캠프(AI아카데미) > TIL&WIL' 카테고리의 다른 글
| [비트캠프 - 클라우드 기반 AlaaS 개발자 과정] 22.11.23.(DAY-28) TIL (0) | 2022.11.24 |
|---|---|
| [비트캠프 - 클라우드 기반 AlaaS 개발자 과정] 22.11.22.(DAY-27) TIL (0) | 2022.11.23 |
| [비트캠프 - 클라우드 기반 AlaaS 개발자 과정] 22.11.18.(DAY-25) TIL (0) | 2022.11.22 |
| [비트캠프 - 클라우드 기반 AlaaS 개발자 과정] 22.11.17.(DAY-24) TIL (2) | 2022.11.18 |
| [비트캠프 - 클라우드 기반 AlaaS 개발자 과정] 22.11.16.(DAY-23) TIL (0) | 2022.11.17 |
댓글