DataBase11 ⏺과제 _ 축구선수관리 프로그램 기획 기획의도 1. 경기 전략적 고려: 경기 도중에는 다양한 상황이 발생할 수 있습니다. 선수 정보를 통해 각 선수의 특성과 능력을 파악하여 특정 상황에 최적의 대응을 할 수 있습니다. 예를 들어, 공격이나 수비를 강화하기 위해 특정 선수를 교체할 수 있습니다. 2. 포지션에 대한 이해: 각 선수의 주 포지션, 다양한 포지션에서의 경험 등을 고려하여 교체를 결정할 수 있습니다. 이를 통해 팀의 전술을 유연하게 조절하고, 상대팀의 전략에 대응할 수 있습니다. 선수 정보는 전략적인 결정에 필수적입니다. 또한, 선수 정보를 기반으로 경기 진행 상황에 맞는 전략을 수립할 수 있습니다. 3. 선수 정보 관리: 축구팀은 선수들의 개인 정보를 체계적으로 관리해야 합니다. 이에는 선수의 이름, 생년월일, 연락처 등이 포함됩.. 2024. 4. 1. 4-2. DB를 활용한 단어장 만들기 # 단어, 뜻, 레벨 찾아서 가져오는 클래스 class Words: def __init__(self, eng, kor, lev=1): self.eng = eng self.kor = kor self.lev = lev def setEng(self, eng): self.eng = eng def getEng(self): return self.eng def setKor(self, kor): self.kor = kor def getKor(self): return self.kor def setLev(self, lev): self.lev = lev def getLev(self): return self.lev def getLev(self): return self.lev ###### db 연결/해제시켜주는 클래스 clas.. 2024. 3. 28. 4-1. 파이썬 MySQL 연결 1. mysqlclient 파이썬에서는 MySQL. 서버와 통신할 수 있는 파이썬을 데이터베이스 커넥터를 다양하게 지원 PyMySQL, mysqlclient를 가장 많이 사용함 사용법은 비슷하나 속도가 빠른 mysqlclient를 권장하고 있음 파이썬과 연결하려면 데이터에서 드라이버를 만들어 소통할 수 있게 해줘야함 그 드라이버가 바로 ' mysqlclient' 이다. 파이썬과 my sql은 다른 언어이기 때문에 매개체가 필요하다. 1. 접속하기 My SQLdb.connect(host='IP주소',user='사용자',password='비밀번호',db='DB명') 2. cursor 생성하기 하나의 DataBase Connection에 대해 독립적으로 SQL문을 실해알 수 있는 작업환경을 제공하는 객체 하나.. 2024. 3. 28. 3-3. My SQL 사용자 수정 1. 사용자 추가하기 MySQL 검색 > MySQL Shell MySQL 8.0 Command Line Client 에서 root 계정으로 로그인 접속 가능한 사용자 추가하기 - create user '사용자명'@'localhost' identified by '비밀번호'; - create user 'apple'@'localhost' identified by '1111'; 사용자 목록 조회 - use mysql; - select user, host from user; 할당 권한 상세 옵션 - create, drop, alter: 테이블에 대한 생성, 삭제, 변경 권한 - select, insert, update, delete : 테이블의 데이털를 조회, 삽입, 변경, 삭제에 대한 권한 - all: 모든 권.. 2024. 3. 27. 3-2. 뷰(view), 다이어그램(Diagram) 1. 뷰(view) 가상 테이블을 생성합니다. 실제 테이블처럼 행과 열을 가지고 있지만, 데이터를 직접 저장하고 있지 않습니다. 뷰를 사용하는 이유 - SQL 코드를 간결하게 만들어 줌 - 삽입, 삭제 수정 작업에 대한 제한 사항을 가짐 - 내부 데이터를 전체 공개하고 싶지 않을 때 create view 뷰이름 as 쿼리문 .... view 수정하기 ㄴ inner 조인으로 수정된 것을 볼 수 있습니다. view 삭제하기 에러: 삭제해서 뜨지 않음 2. 다이어그램(Diagram) ER - Diagram Database -> Reverse Engineer... -> 2024. 3. 27. 3-1. MySQL 문자열 함수, 유니온, 서브쿼리 1. MySQL 문자열 함수 1. concat : 복수의 문자열을 연결해주는 함수 2. left, right : 왼쪽 또는 오른쪽에서 길이만큼 문자열을 가져옴 3. substring: 문자열의 일부를 가져옴 (1) substring(문자열, 시작위치) : 시작위치부터 끝까지 (2) substring(문자열, 시작위치, 길이): 시작위치부터 길이만큼 4. char_length: 문자열의 길이를 반환 5. lpad, rpad: 왼쪽 또는 오른쪽의 해당 길이만큼 늘리고, 빈 공간을 채울 문자열을 반환\ : lpad(문자열, 총길이, 채울문자열) 6. ltrim, rtrim, trim: 왼쪽, 오른쪽, 모든 공백을 제거 7. replace: 문자열에서 특정 문자열을 변경 : replace(문자열, 대상, 바꿀 .. 2024. 3. 27. 2-4. 데이터 정규화 , 조인 1.데이터 정규화 - 데이터 베이스를 설계할 때 중복을 최소화하는 것 - 조직화 되어 있지 않은 테이블과 관계들을 조직화된 테이블과 관계들로 나누는 것 * 데이터 정규화가 필요한 경우 - 테이터를 변경, 삽입, 삭제할 때 원하지 않게 데이터가 삭제되거나 가공되는 일이 발생할 수 있음(이상현상) - 이상 현상이 발생할 가능성이 있다면 정규화가 필요 2. 정규화의 종류 1. 1NF (제 1 정규화) (1) 테이블 안에 모든 값들은 단일 값이여야 함 (2) 더 이상 쪼개질 수 없는 단위로 저장 2. 2NF(제 2 정규화) (1) 1NF를 만족하며서 종속성을 가진 관계들로만 테이블을 생성 - 종속성들 중 종속 관계에 있는 열들끼리 테이블을 구분해 주는 것 - 기본키에 속하지 않은 모두가 기본키에 완전 함수 종속.. 2024. 3. 27. 2-3. 집계함수 1. count() : 로우의 갯수를 세는 함수</.. 2024. 3. 27. 2-2. 데이터 수정하기 1. 데이터 삽입 insert 1. insert into 테이블명 values (값1, 값2, 값3 ...) - 전체 필드 - 필드랑 값의 개수 일치 # [words] 테이블을 생성해서 실습해보기 에러 : 컬럼 갯수가 일치하지 않음 null을 넣으면 기본값 1이 아닌 null이 들어갑니다. 에러 : 뜻에 null을 넣을 수 없습니다. 2. insert into 테이블명 (필드명1, 필드명2 ...) values (값1, 값2, 값3 ...) - 원하는 필드 - 넣지않은 곳에는 null 메론행은 기본값에 1이 들어간 것을 확인할 수 있습니다. 순서가 달라도 잘 입력됩니다. 에러: 뜻에 null을 넣을 수 없습니다. 주의사항 - primary key, not null 이 설정되어 있는 필드는 무조건 작성 -.. 2024. 3. 27. 이전 1 2 다음