SQL 7

[SQL 첫걸음] 8장 데이터베이스 설계

데이베이스 설계데이터베이스를 설계한다는 것은 데이터베이스의 스키마 내에 테이블, 인덱스, 뷰 등의 데이터베이스 객체를 정의하는 것을 말한다. 스키마 내에 정의한다는 뜻에서 ‘스키마 설계’라고 불리기도 한다.데이터베이스를 설계할 땐 논리명과 물리명, 자료형, 고정길이와 가변길이, 기본키 등에 대해 설계한다.테이블 간의 관계를 명확히 하기 위해서 ER다이어그램을 자주 사용한다.트랜잭션몇 단계로 처리를 나누어 SQL 명령을 사용하는 경우에 트랜잭션을 자주 사용한다. 트랜잭션을 사용해서 데이터를 추가한다면 에러가 발생해도 트랜잭션을 롤백해서 종료할 수 있다. 아무런 에러가 발생하지 않는다면 변경사항을 적용하고 트랜잭션을 종료하는데, 이 때 커밋을 사용한다.INSERT, UPDATE, DELETE가 처리될 때마다..

SQL 첫걸음 2025.03.27

[SQL 첫걸음] 6장 데이터베이스 객체 작성과 삭제

데이터베이스 객체데이터베이스 객체는 데이터베이스 내에 실체를 가지는 어떤 것을 말한다. 테이블, 뷰, 인덱스가 객체에 해당한다.데이터베이스 객체는 스키마라는 그릇 안에 만들어진다. 따라서 객체의 이름이 같아도 스키마가 서로 다르면 상관이 없다. 어떤 것이 스키마가 되는지는 데이터베이스 제품에 따라서 달라진다. MySQL에서는 CREATE DATABASE 명령으로 작성한 데이터베이스가 스키마에 해당한다.테이블테이블 작성# 열 정의 : 열명 자료형 [DEFAULT 기본값] [NULL|NOT NULL]mysql> CREATE TABLE sample62 ( -> no INTEGER NOT NULL, -> a VARCHAR(30), -> b DATE -> );Query OK, 0 ..

SQL 첫걸음 2025.03.27

[SQL 첫걸음] 3장 정렬과 연산

정렬 - ORDER BYSELECT 열명FROM 테이블명WHERE 조건식ORDER BY 열명SELECT * FROM sample31 ORDER BY age;SELECT * FROM sample31 ORDER BY name DESC; // 내림차순 정렬SELECT * FROM sample31 ORDER BY name ASC; // 오름차순 정렬 (디폴트)복수의 열을 지정해 정렬하기SELECT 열명FROM 테이블명WHERE 조건식ORDER BY 열명1 [ASC|DESC], 열명2 [ASC|DESC] ... 열명1을 이용해 정렬을 한 후, 값이 같아 순서를 결정할 수 없는 경우에는 다음으로 지정한 열명을 기준으로 정렬한다.SELECT * FROM sample32 ORDER BY a ASC, b DESC;+--..

SQL 첫걸음 2025.03.26

[SQL 첫걸음] 2장 테이블에서 데이터 검색

SELECT * FROM sample21;DESC sample1; # 테이블 구조 참조하기(SQL 명령 아님)# 검색 조건 지정하기SELECT no, name FROM sample21;SELECT * FROM sample21 WHERE no=2;SELECT * FROM sample21 WHERE no2;SELECT * FROM sample21 WHERE name='박준용';# SELECT * FROM sample21 WHERE birthday=NULL; # 검색 안됨SELECT * FROM sample21 WHERE birthday IS NULL;SELECT * FROM sample21 WHERE birthday IS NOT NULL;# 조건 조합하기SELECT * FROM sample24 WHERE a..

SQL 첫걸음 2025.03.26