DBMS : 데이터의 집합인 데이터베이스를 잘 관리하고 운영하기 위한 시스템 or SW
- 외래키 Foreign key : 데이터 무결성 보장됨
- 기본 키 Primary key : 행 단위 구분 데이터
- 제약조건
- 새로운 데이터 들어갈 때는 부모 테이블에 먼저 넣어야함
- 데이터 삭제 시에는 자식 테이블에서도 지워야 함
mysql 서버는 자동으로 구동 됨 -> 컴터 키면
- 워크벤치
- mysql 관리하는 목적으로 쓰임
Sql
- DDL
- 데이터 정의
- DML
- 데이터 추가/수정/삭제
- DCL
- 데이터 관리, 접근 권한 제어
( ※ DML이 SELECT에 있다는 것은 바라보는 관점에 따라 다름,)
- 기본키 정의
이렇게 2가지 방법을 기본키정의를 할수 있다.
- 부호
- 단일 인용 부호를 써야한다.
- 별명일 경우는 더블 쓸 수도 있다 .
INSERT INTO LOCATIONS VALUES ('A1','SEOUL');
- 한글
한글 설정
- 정보 출력
- desc 테이블 명;
- 컴럼 사양들
- 객체를 통해서 사용 : 변수
- 메소드 or 함수 -> mysql 내장 함수
- select user( ) : 현재 내가 어떤 계정으로 접속했는지
- select database( ); 현재 사용하고 있는 database이름 (use한거)
- DBMS, 서버 환경에 따라 데이터베이스 or 필드명이 대소문자를 구분하기도 함
SELECT문
추출하고자하는 데이터베이스
select now() from emp;
from이 emp이지만, now의 결과 14개를 뽑음
select now() form dual;
dual -> 테이블 내용 중요하지 않고, 함수의 결과 한번만 출력
그래서 from 없애도 나옴 (mysql은 from 생략 가능)
- 테이블 내용 출력하는게 아니면 from 생략 가능
(오라클은 from 없애면 안됨)
select sysdate();
sysdate 오라클에서 추가함
use 구문
- 데이터 베이스 사용하겠다.
( * 시간은 ',' 으로 구분되고, 년월일은 '-'아니면 '/'로 구분됨 )
( null 연산하면 null이기 때문에 연산할 때는 따로 바꿔줘야한다 )
조회
show table status;
- 데이터 베이스에 있는 테이블 정보 조회
DESCRIBE EMP;
- emp 테이블에 열이 무엇이 있는지
WHERE 절
등가 연산자 : '='
관계 연산자
- BETEEN ... AND ( BETEEN A AND B ) (A<B)
- 데이터가 숫자로 구성되어 있으며 연속된 값
- IN( 값의 리스트 )
- 등가 연산자랑 똑같은데, 비교하려는 값이 2개 이상일 때
- ex) select * from emp where deptno in(20, 30)
- select * from emo where deptno=20 or deptno=30와 같다.
- Like (패턴 비교)
- 패턴 문자 : %, _
- % : 0개 이상의 모든 문자
- _ : 임의의 한 문자
where title like 'java%' java로 시작하는 얘들만 where title like '%java%' 중간에 java들어가있는 것 where title like '%java' 끝이 java로 끝나는 얘들만 where title like 'java_' java로 시작하는데 뒤에 한 문자만 와야함 where title like 'java___' java뒤에 3개가 와야함 - where tilte = '%java%' : 진짜로 %java% 문자를 찾는다.
- 패턴 문자 : %, _
ORDER BY
order by 안 쓰면 테이블이 가지고있는 순서에 의해서 뽑아짐 (순서는 보장할 수 없다.)
오늘날짜가 더 큰 값 ( 1970년 1월 1일 기준)
- desc 내림차순
- aesc 오름차순 (디폴트)
DISTINCT
- SELECT distinct : 중복되는 것 골라서 하나만 보여줌
- distinct all : 중복되는 행이 발견해도 다 표현한다.
- 모든 컴럼이 모두 같을 때, 처리된다. (중복 처리하는 것)
- select distinct job, deptno from emp;
LIMIT IN
- LIMIT IN : 위에서 부터 몇 개
- as : 별칭
- select now() as 현재시간;
- select now() as "현재 시간"; : ""씀으로써 공백까지
'study > JAVA 전문가' 카테고리의 다른 글
mysql 3 - 연습문제 (0) | 2021.12.17 |
---|---|
mysql 3 (0) | 2021.12.17 |
inner (0) | 2021.12.10 |
자료구조 2 - 복습 (0) | 2021.12.10 |
자료구조 1 (0) | 2021.12.09 |