본문 바로가기

개발이야기/웹_백엔드28

6) JDBC란? * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. 1. JDBC 개요 JDBC(Java Database Connectivity)의 정의 - 자바를 이용한 데이터베이스 접속과 SQL 문장의 실행, 그리고 실행 결과로 얻어진 데이터의 핸들링을 제공하는 방법과 절차에 관한 규약 - 자바 프로그램 내에서 SQL문을 실행하기 위한 자바 API - SQL과 프로그래밍 언어의 통합 접근 중 한 형태 JAVA는 표준 인터페이스인 JDBC API를 제공 데이터베이스 벤더, 또는 기타 써드파티에서는 JDBC 인터페이스를 구현한 드라이버(driver)를 제공한다. 2. JDBC 환경 구성 JDK 설치 JDBC 드라이버 설치 - Maven에 다음과 같은 의존성을 추가한다. MySQL사이트에서 다운로드 한다.. 2020. 7. 23.
5) Maven 이란? * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. -웹 앱 프로젝트는 nodejs, jsp로만 해봐서 maven은 처음이다..ㅜ 하지만 jsp를 하면서 pom.xml은 조금 익숙해서 다행이다. 1. Maven이란? Maven은 지금까지 애플리케이션을 개발하기 위해 반복적으로 진행해왔던 작업들을 지원하기 위하여 등장한 도구입니다. Maven을 사용하면 빌드(Build), 패키징, 문서화, 테스트와 테스트 리포팅, git, 의존성관리, svn등과 같은 형상관리서버와 연동(SCMs), 배포 등의 작업을 손쉽게 할 수 있습니다. Maven을 이해하려면 CoC(Convention over Configuration)라는 단어를 먼저 이해해야 합니다. CoC란 일종의 관습을 말하는데, 예를 들자면.. 2020. 7. 23.
4) DDL(create, drop) * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. -외래키 설정되어있는 테이블 컬럼이나 데이터를 삭제할 때 반대 순서대로 삭제해야한다,,(처음 만든 순서대로 했다가 에러먹은 사람,,) 1. MySQL 데이터 타입 2. 테이블 생성 create table 테이블명( 필드명1 타입 [NULL | NOT NULL][DEFAULT ][AUTO_INCREMENT], 필드명2 타입 [NULL | NOT NULL][DEFAULT ][AUTO_INCREMENT], 필드명3 타입 [NULL | NOT NULL][DEFAULT ][AUTO_INCREMENT], ........... PRIMARY KEY(필드명) ); 데이터 형 외에도 속성값의 빈 값 허용 여부는 NULL 또는 NOT NULL로 설정 D.. 2020. 7. 23.
3-4) DML(select, insert, update, delete) * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. -기본적으로 다 외워야하는 쿼리...! 1. 데이터 입력 (INSERT문) INSERT INTO 테이블명(필드1, 필드2, 필드3, 필드4, … ) VALUES ( 필드1의 값, 필드2의 값, 필드3의 값, 필드4의 값, … ) INSERT INTO 테이블명 VALUES ( 필드1의 값, 필드2의 값, 필드3의 값, 필드4의 값, … ) 필드명을 지정해주는 방식은 디폴트 값이 세팅되는 필드는 생력할 수 있습니다. 필드명을 지정해주는 방식은 추 후, 필드가 추가/변경/수정 되는 변경에 유연하게 대처 가능합니다. 필드명을 생략했을 경우에는 모든 필드 값을 반드시 입력해야 합니다. 2. 데이터 입력 실습 (INSERT문) 예제 : ROLE테.. 2020. 7. 23.
3-3) DML(select, insert, update, delete) * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. -앱잼을 진행하면서 긴 쿼리를 사용했었다. 그런데도 해결책이 나지 않아 혹시나하는 마음에 group by를 썼더니 한번에 해결되었다. 1. SELECT 구문(CAST 형변환) 예제 mysql> select cast(now() as date); +---------------------+ | cast(now() as date) | +---------------------+ | 2003-09-25 | +---------------------+ 1 row in set (0.00 sec) mysql> select cast(1-2 as unsigned); +----------------------------+ | cast(1-2 as unsign.. 2020. 7. 23.
3-2) DML(select, insert, update, delete) * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. 1. SELECT 구문 예제(특정 행 검색- where절) 산술비교 연산자 예제 : employee 테이블에서 고용일(hiredate)이 1981년 이전의 사원이름과 고용일을 출력하시오. select name, hiredate from employee where hiredate < '1981-01-01'; 논리연산자 예제 : employee 테이블에서 부서번호가 30인 사원이름과 부서번호를 출력하시오. select name, deptno from employee where deptno = 30; IN 키워드 예제 : employee 테이블에서 부서번호가 10또는 30인 사원이름과 부서번호를 출력하시오. select name, deptn.. 2020. 7. 23.
3-1) DML(select, insert, update, delete) * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. 1. 데이터 조작어(Data Manipulation Language, DML)의 종류 데이터 조작어는 모두 동사로 시작합니다. 시작하는 동사에 따라서 다음과 같은 4가지 조작어가 있습니다. SELECT – 검색 INSERT - 등록 UPDATE - 수정 DELETE - 삭제 2. SELECT 구문의 기본문형 3. SELECT 구문 예제(전체 데이터 검색) 전체 데이터 검색 SELECT 뒤에 * 를 기술함으로써 나타낼 수 있다. 예제 : departments 테이블의 모든 데이터를 출력하시오. SELECT * FROM DEPARTMENT; 4. SELECT 구문 예제(특정 컬럼 검색) SELECT 뒤에 컬럼을 콤마(,)로 구별해서 나열 .. 2020. 7. 22.
2-2) SQL이란? * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. 1. 데이터를 저장하는 공간 테이블(Table) 마이크로소프트의 엑셀(Excel)을 실행하면 표가 나옵니다. 이러한 표에 각종 값을 저장할 수 있습니다. 데이터베이스도 엑셀의 표와 유사한 테이블을 가질 수 있습니다. 엑셀과 다른 점은 데이터베이스를 생성해도 테이블은 존재하지 않는다는 것입니다. 테이블을 사용하려면 테이블을 생성하는 SQL을 사용해야 합니다. 그리고, 테이블에 값을 저장하려면 저장하기 위한 SQL을 사용해야 합니다. 2. 테이블(table)의 구성요소 3. 테이블(table)의 구성요소 테이블 : RDBMS의 기본적 저장구조 한 개 이상의 column과 0개 이상의 row로 구성합니다. 열(Column) : 테이블 상에서.. 2020. 7. 22.
2-1) SQL이란? * 이 글은 부스트코스 웹 백엔드 강의 수강 바탕으로 작성되었습니다. "사람과 사람이 대화하기 위해서는 언어가 필요합니다. DBMS에게 명령을 내릴 때도 특별한 명령이 필요합니다. 이 명령을 SQL이라고 합니다." - 부스트코스 sql 강의 중 제일 상단에 위치해있던 문구이다. 여태 sql에 대한 설명 중 가장 와 닿았던 표현이다. 핵심 개념 create database grant flush privileges select - sql을 사용할 때 터미널을 이용해 본적은 MariaDB를 사용했을 때였고, 이후부턴 workbench를 사용해서 터미널이 익숙하지 않았지만 금방 이해가 잘 되었다. 1. SQL(Structured Query Language) SQL은 데이터를 보다 쉽게 검색하고 추가, 삭제, 수.. 2020. 7. 22.