본문 바로가기

mysql

docker-compose를 이용한 MySQL서버를 배포하고 Spring연동하기 1. Spring (1) Gradle dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' testImplementation 'org.springframework.boot:spring-boot-starter-test' implementation 'org.springframework.boot:spring-boot-starter-data-jpa' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' runtimeOnly 'com.mysql:mysql-connector-j' } 테스트를 위해 springweb,spring.. 더보기
자료형,제약조건 자료형 (1)정수형(부호있음/부호없음) TINYINT(-128~127 / 255):1Byte INT(-21억~21억 / 43억):4Byte BIGINT(-9경~9경/18경):8Byte (2)실수형(길이,수소점 이하 자리수) FLOAT(size,d):4byte DOUBLE(size,d):8byte DEMICAL(size,d):10진법 (3)문자열 CHAR 고정 길이 문자열(최대 255자) VARCHAR 가변길이 문자열(최대 65,535자) (4)TEXT문자열 TEXT(최대 65,535자):2byte MEDIUMTEXT(최대 16,777,215자):16MB LONGTEXT(최대 4,294,967,295자):4GB (5)BLOB(Binary Large Object):Image,File BLOB(최대 65,53.. 더보기
서브쿼리,집합연산 서브쿼리 쿼리문 내에 또 다른 쿼리문이 있는 형태 서브쿼리는 메인쿼리에 포함되는 관계 ()을 사용해 감싸는 형태 ORDER BY를 사용하지 못함 사용가능한 위치: SELECT,FROM,WHERE,HAVING,ORDERBY 종류:단일행서브쿼리,다중행 서브쿼리,다중컬럼 서브쿼리 (1)단일 행 서브쿼리 결과가 레코드 하나인 서브쿼리 일반 연산자(=, 등) 사용 select * from city where CountryCode = (select Code from country where Name="South Korea"); (2)다중 행 서브쿼리 결과가 레코드 여러 개인 서브쿼리 다중행 연산자(IN,ALL,ANY,EXISTS) 사용 ALL:여러개의 AND 효과(가장 큰 값과 비교) ANY:여러개의 레코드의 OR.. 더보기
LIKE 검색,NULL,GROUPBY/HAVING LIKE 검색 정확한 키워드를 모를 경우 일부만으로 검색하는 방법 와일드카드(%,_)를 사용하여 패턴매칭 %:0~n글자 _: 1글자 LIKE검색은 매칭하기 위해 DMBS에 부담이 많으므로 논리조건자와 중복해서 사용하지 않는게 좋다. select * from city where name like "K%"; select * from city where name like "%K"; select * from city where name like "%K%"; select * from city where name like "K____"; NULL NULL이란 해당 컬럼의 값이 없다는 의미를 가진다. NULL값을 가지고 있는 컬럼을 검색하려면 is NULL NULL이 아닌 값을 가지고 있는 컬럼을 검색하려면 is n.. 더보기
MySQL 기본적인 Query 및 사용법 기본적인 Query show databases:DB들의 리스트 표시 show databases; use DBNAME: DBNAME 사용 use world; show tables: DB의 테이블리스트를 표시 show world; desc TABLENAME: TABLENAME의 구조를 표시 desc city; select * from TABLENAME:TABLENAME의 모든 내용을 표시 select * from city SELECT 컬럼명 FROM 테이블명 WHERE 조건절 테이블에서 조건에 해당하는 컬럼 표시 select name from city where CountryCode="KOR"; INSERT INTO 테이블명(컬럼명) VALUES(값) 테이블이나 컬럼에 값 삽입 INSERT INTO city.. 더보기
DBMS 기초 DBMS 데이터베이스를 관리하는 시스템 데이터를 저장하고 유지보수(수정, 삭제, 추가)하고 이를 검색하는 시스템 CRUD(Create, Retrieve, Update, Delete) 다양한 자료구조와 검색 구조를 사용해 빠른 검색 가능 검색에 최적화되어있다.(쓰기에 최적화된 시스템은 NOSQL계열) Index 이진 탐색 최대 log2(N) 번 내에 검색 가능 데이터의 정렬이 필요 데이터가 추가/삭제/변경될 때마다 한가운데/왼쪽 가운데/오른쪽 가운데 값을 미리 계산-> Index B-Tree 상용 DBMS에서 가장 일반적으로 많이 사용됨 이진 검색과 유사하지만 한 번에 비교를 2번 함(a, b:a 더보기