DB42 like & update문 1. Like 문 : 검색하고자하는 키워드 또는 값이 포함된 것을 조회할 때 2. Update 문 : 조건문을 활용하여 기존 값을 변경 #like문 SELECT * FROM 테이블명 WHERE 필드명 LIKE '%포함된 글자%'; #update문 update 테이블명 set 필드명 = '변경할 값' + 조건 where문 2023. 10. 19. 중학교 성적관리 프로젝트(part 1) □ 상황 ○ 과목, 학년별 담당 선생님이 따로있음 ○ 시엄은 중간/기말고사 두가지임 ○ 학생들은 학년, 반에 배정되며 반별로 학생들에게 고유 번호를 부여함 ○ 각 반에는 담임 선생님이 배정되어 있음. 선생님 중에는 담임을 맡지 않는 선생님도 있음 ○ 한 번의 학생은 대략 40명 정도이고 남녀 공학임 ○ 석차는 남녀 공통 1등부터 순서대로 정함 ▼▼▼▼▼▼1단계 : 키워드 추출▼▼▼▼▼ ○ 과목 선생 ○ 담당 선생 ○ 시험 - 중간고사, 기말고사 ○ 학생, 학년, 반, 배정, 고유번호(반별) ○ 담임, 선생님 ○ 한반의 학생 40명 ○ 남녀 공학 ○ 석차(남녀 공통 1등부터 순서대로) ▼▼▼▼▼2단계 : 명사/동사에 따른 테이블 분류▼▼▼▼▼ ○ 마스터 테이블(명사) = 기준 테이블 * 한번 선정되어 모델.. 2023. 10. 19. 도서관 도서 대출관리(part 1) ○ 도서관에는 각 서고/서가에 많은 책들이 있음 ▶(명사/동사추출) 서고, 서가, 책 * 서고 : 책이 위치한 공간 / 서가 : 책꽂이 수납장 * 서고와 서가는 1:M, 서가와 서가공간(행/열)은 1:M ○ 고객들은 인터넷을 통해서 로그인한 후 도서 목록을 조회가능 ▶(명사/동사추출) 고객, 로그인, 도서목록, 조회 ○ 고객들은 원하는 책 대출받을 수 있음 ▶(명사/동사추출) 대출-고객이 직접찾아 대출 ○ 고객은 책이 있는 경우 대출예약을 할 수 있으며 대출을 위해 직접 방문해서 책을 찾아 대출해야함 ▶(명사/동사추출) 대출예약 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼ 상황요약 ▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼.. 2023. 10. 17. M:N 관계 ○ 1:M 관계가 존재할 때 나타나는 모습임 ○ M:N관계는 선천적으로 테이블과 테이블과 관계가 없고 각 테이블은 스스로 존재하고 있지만 이러한 상황에서 어떤 관계를 맺어줌으로써 관계가 형성됨 ex) 학생과 과목 테이블 : 서로 쌍방이며 M:N관계 형성 2023. 10. 16. 1:M 관계와 재귀적 관계 (part 3) ○ 보통 아래 사진과 같이 회사별 부서, 그리고 부서의 하위 팀을 위한 1:M관계로 모델링을 시행함 ○ 위왁 같은 모델링시 1:M관계는 성립되지만 지속해서 테이블이 늘어나는 구조가 되어버려 개발자들 또는 DB관리자 입장에서 비효율적인 업무를 진행할수밖에 없음. ○ 이를 위해 적용할 수 있는 방법이 테이블 재귀적 관계 모델링임. ○ 재귀적 관계란 자기자신을 참조, 즉 자기 테이블의 PK를 참조하는 컬럼(필드)을 같은 테이블에 생성하여 자기자신과의 관계를 맺는 것임. 따라서 부모테이블이 자식테이블이며, 자식테이블이 부모테이블 역할을 할수 있음. ○ 위 사진처럼 부서1은 부서ID를 PK로 선언하였으며 이를 상위부서ID 컬럼이 참조하는 구조임. 즉, 재귀적 관계임을 알 수 있음 ○ 우측 사진과 같이 총무부, 영.. 2023. 10. 13. 1:M 관계 (part 2) ※ 이전 게시물 1:M 관계 (part 1)이어서 다른 예제진행 □ 주제 : 회사/부서 모델링 □ 세부내용 ○ 회사 테이블 생성 (PK값에 자동증분설정 X) ○ 부서 테이블 생성 (PK값에 자동증분설정 X) ○ 회사와 부서 테이블간 관계 설정 □ 쿼리문 --회사 및 부서 추가① --PK 속성에 Auto-increment를 지정안했기 때문에 PK값을 직접 지정해야함 insert into company_tb values(1,'samsung','12341234') insert into dept_tb values(1,1,'전략기획') insert into dept_tb values(2,1,'해외마케팅') insert into dept_tb values(3,1,'국내마케팅') insert into dept_tb .. 2023. 10. 12. 테이블에 CSV 데이터 파일 적재 #데이터를 새로 적재할 테이블 비우기 TRUNCATE table_Name #CSV 적재쿼리 LOAD DATA LOCAL INFILE '파일 경로' -- 적재 데이터 저장위치 INTO TABLE table_Name --적재할 테이블 FIELDS TERMINATED BY ',' --CSV 파일 내 컬럼 구분자 ENCLOSED BY '"' --각 컬럼은 ""로 감싸져 있음 LINES TERMINATED BY '\n' --각 행 구분은 \n(한줄띄기) IGNORE 1 ROWS; --첫행 무시. 보통 첫행은 컬럼명임 □ 주의사항 - 보통 테이블 내 컬럼 타입 및 길이와 적재할 데이터의 타입/길이가 안맞아 데이터 누실이 발생됨. 이에 따라 적재하기 전에 적재할 데이터와 테이블내 컬럼 타입 등 세부내용을 확인하고 테.. 2023. 10. 11. 1:M 관계 (part 1) □ 한쪽이 관계를 맺은 쪽의 여러객체를 갖는 것을 의미하며, 가장 흔하게 나타나는 매우 일반적인 형태임 □ 부모와 자식 관계가 대표적 예가될 수 있으며 컴퓨터 디렉터리 구조 역시 마찬가지임 □ 트리구조 형태를 가짐 □ 테이블은 서로 선천적으로 관계를 가지고 있음 □ 관계는 반드시 2개 테이블간의 관계만 있음 □ FK(외래키/Foreign Key)는 참조테이블에서의 PK(Primary Key)임 □ PK와 FK를 통하여 관계설정 □ 법칙은 아니지만 작명시 PK명과 FK명을 동일하게 설정하는 것을 권장함 □ 부모는 반드시 한개이대, 자식은 N개임. 부모, 즉 참조할 PK가 2개라면 오류발생 또는 자식테이블에는 있지만 부모테이블에 참조할 PK 값이 없다면 이 또한 오류 원인. □ 예제 : 학년, 반 모델링 ○.. 2023. 10. 11. 테이블 생성 및 Auto_Increment 설정 □ 테이블 생성시 create 문 활용 : Create 테이블명 (필드1 데이터타입설정 Null여부 PK지정 Auto_Increment지정 기본값 지정, 필드2 데이터타입설정 Null여부 ~~~~ 기본값 지정); CREATE TABLE Table_Name ( ID Int(6) NOT NULL PRIMARY KEY Auto_Increment, --자동증분 Auto_Increment 지정 first_Field VARCHAR(30) NOT NULL default 적재할 기본값, --default 활용하여 기본값 설정 second_Field BOOLEAN NOT NULL default 적재할 기본값, third_Field VARCHAR(10) NOT NULL, fourth_Field DATETIME NOT NU.. 2023. 10. 10. 이전 1 2 3 4 5 다음