목차
- MongoDB 게시판 만들기
- Python과 SQL 연동
- 게시판 구현을 이용한 Database의 CRUD 이해
1. MongoDB 게시판 만들기
sudo mkdir 파일이름 #파일 생성
sudo chmod -R 777 파일이름 #모든 파일의 권한을 열어줌 (제일 상위 파일로 가야함)
cd 파일이름 # 하위폴더로 들어가기
cd .. # 이전 폴더로 가기
각 해당 파일을 위치에 맞게 잘 넣어주기
다시 SSH로 들어가서 ls 눌러 파일이 잘 들어갔는지 확인하기
python3 파이썬파일이름
# [TMI] 이 게시글을 만들기 위해 노력했답니당,,어제부터 열심히 달려봤지만 mongodb 너란 녀석은 참.. 정을 줬다가도 다시 뺏어가는 마성의 매력이 넘쳐.. 그래도 확실히 결과물이 눈에 보이니 해-삐하네용
MariaDB ALTER TABLE
ALTER TABLE 문은 MariaDB에서 기존 테이블의 구조를 변경하는 데 사용됩니다. 이를 통해 열 추가, 삭제, 수정, 인덱스 추가, 제약 조건 변경 등의 작업을 수행할 수 있습니다.
● 기본 테이블 및 데이터 생성
1) 열 추가 (ADD COLUMN)
새로운 email열을 추가
ALTER TABLE employees ADD COLUMN email VARCHAR(100) AFTER name;
2) 열삭제 (DROP COLUMN)
기존 department 열을 삭제
ALTER TABLE employees DROP COLUMN department;
3) 열 이름 변경(CANGE COLUMN)
salary 열의 이름을 monthly_salary로 변경
ALTER TABLE employees CHANGE COLUMN salary monthly_salary DECIMAL(10,2) NOT NULL;
4) 열 데이터 타입 변경
ALTER TABLE employees MODIFY COLUMN monthly_salary BIGINT NOT NULL;
5) 기본 키 변경(ADD/DROP PRIMARY KEY)
ALTER TABLE employees MODIFY id INT; -- AUTO_INCREMENT 제거
ALTER TABLE employees DROP PRIMARY KEY;
ALTER TABLE employees ADD PRIMARY KEY (email);
기본 id 기본 키를 제거하고 email을 기본키로 설정
기본 키를 변경하려면 email 열이 NOT NULL이어야 함 -> 위 데이터로는 기본키 변경!
6) 테이블 이름 변경(RENAME TO)
ALTER TABLE employees RENAME TO staff;
▷ employees 테이블 이름을 staff로 변경
desc 쓸때도 desc staff로 해야함
7) 인덱스 추가 및 삭제(ADD/DROP INDEX)
# name 열에 인덱스 추가
ALTER TABLE staff ADD INDEX idx_name (name);
# 인덱스 삭제
ALTER TABLE staff DROP INDEX idx_name;
ALTER TABLE | |
열 추가 | ADD COLUMN |
열 삭제 | DROP COLUMN |
열 이름 변경 | CHANGE COLUMN |
열 데이터 타입 변경 | MODIFY COLUMN |
기본 키 변경 | ADD/ DROP PRIMARY KEY |
테이블 이름 변경 | RENAME TO |
인덱스 추가 및 삭제 | ADD/ DROP INDEX |
2. Python과 SQL 연동
pip install mysql-connector-python pandas
sublime text에 해당 파이썬 파일을 저장
파일 저장까지 완료한 후 밑에 표로 안에 데이터를 바꾸기
chatgpt에게 데이터에서 표 데이터로 바꿔달라고 조르기 -
그 후에 파일을 다시 파일질라에 넣고 python3.app.py로 입력해주면 변경!
(되게 쉽게 성공한 척 썼지만 수많은 error와 실수 후에 성공을 했답니당,,)
3. [실습] 게시판 구현을 이용한 Database의 CRUD 이해
work 안으로 들어가서
board라는 폴더를 만들고
그 안으로 들어가기
templates, static, uploads 폴더 만들기 한 후
cd .. ( cd 뛰우고 ..)을 친후
board의 모든 권한을 열어주기
그 다음 파일 질라 들어가서 해당 파일들을 위치에 맞게 잘 넣어준 후
그랬는데.. 사이트가 들어가지지 않아 당황을 했지만 MYSQL에선 모델 정의를 테이블로 해줘야 한다고 합니당..!
CREATE TABLE posts (
id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL,
author VARCHAR(255) NOT NULL,
created_at VARCHAR(255),
image VARCHAR(255)
);
다 해주고 외부IP:5001을 해주면!!
나만의 게시판 완성!!! 그후 테스트를 진행하고 회고를 하며 오늘 하루를 마칩니당:)
# [멋사 그로스마케팅 부트캠프 DAY10] 후기 & 회고
이제 아주 쬐금 봤다고 아주 조금 익숙해진 mongodb 하지만 만들었는데 안뜨면 속상해서 계속 보게 된다.. 그래도 만들었다는 것에 의의를 두며 ^,,^ 확실히 실습을 하니 성과가 보여 뿌듯하긴 하지만 내 것이라는 느낌은 아직 안든다. 점차 하면 버퍼링도 줄어들고 조금은 웃을 수 있을거라 생각하며 열심히 배워봅니당. 오늘 회고조를 진행했는데 회고조 할때 가장 힐링됩니다.. 다들 너무 좋으시고 같이 부트캠프 잘 끝냈으면 좋겠다 👍 (이제 이모티콘 쓸 수 있음!) 사실 오늘 자기소개겸 나이 질문을 하셔서 얘기하다가 우연히 내가 젤 막내인걸 알았을때 다른 분 나이를 들었는데 동공지진이 일어났는데,, 그건 너무 다 동안이라 하,, 그래서 표정 관리가 안돼 헉 놀라버렸다.. (hoxy나 이 글을 볼리 없겠지만 본다면 그뜻이 아녔다고 사과하고 싶어유ㅠㅠ) 오늘 그마나 위안이였던건 나만 헤매고 어려워하는게 아니라 다행이다..(?) 함께 이겨낼 사람이 있어서 다행이다 싶다. 확실히 초반 블로그의 의욕뿜뿜일땐 몇 시간을 불태웠는데 시험도 다가오고 해야할 것도 많아 점점 간결해지고 이것 보다는 내가 한 일들을 기록하는 것이 좋을거 같다는 생각이 들어 일단은 이렇게 적고 있다,,@ 아직 모르는 것도 많고 말하는 감자이지만 감자에서 싹이 나고 꽃이 피듯이,,(?) 차근차근 배워가면서 나를 키워봐야겠다! 그럼 다들 주말 잘 보내시고 행복하세요:) 아자아자 화이팅 🙇♀️🙆♀️🙆♀️