SQL 혼내주기 [INSERT]
이전 글
2022.01.11 - [분류 전체보기] - SQL 혼내주기 [CREATE]
이전 게시글에서 무사히 잘 따라왔다면 위와 같은 테이블이 만들어져 있을 것이다.
이제 우리는 INSERT를 통해 타입에 맞게 값을 삽입해 볼 것이다.
insert into users (idx,nickName,age,phone) values (1,"james",17,"010-1234-5678");
select * from users;
위 코드를 쳐보면 insert로 값을 삽입하고 select를 통해 실제로 값이 들어갔는지 조회할 수 있다.
insert into 테이블명 (삽입할컬럼명) values (삽입값);
INSERT는 위 구조를 가지는데 컬럼명과 values의 값이 순서대로 매칭 된다고 보면 된다.
고로 짝이 맞아야 한다는 소리, 집어넣을 컬럼이 다섯 개면 값도 다섯 개!
insert into users (idx,nickName,age,phone) values (1,"james","abc","010-1234-5678");
타입이 맞지 않으면 당연히 오류가 난다.
전화번호는 숫자가 국룰이지만 한글이 들어간 느낌이랄까
위 코드에서 age는 나이를 나타내므로 숫자로 표현되야하지만 뒤에 매칭 되는 건 "abc"라는 문자열이다.
그렇기에 age의 값이 정수형이 아니라는 오류가 나타났다.
본인이 이 테이블의 구조를 잘 모르겠다면 DESC를 이용해보자.
DESC 테이블명
desc users;
이렇게 users 테이블의 구조가 나온다.
Null컬럼은 나중에 자세히 다루겠지만 빈 값 가능 여부, 필수 값이라고 생각하자.
Default는 당신이 insert에서 값을 할당해주지 않으면 기본으로 들어가 있는 값이다.
보통 게임에서 시작 레벨이 1이니 Level 컬럼의 Default값은 1이겠거니 이해해봐도 좋겠다.
중간점검
당신은 아래의 스킬을 획득했습니다.
아래 내용 중 이해가 되지 않는 게 있다면 이전 글을 다시 보시거나
다른 서적, 블로그를 이용해 학습하고 오셔야 합니다.
- 데이터베이스의 정의
- create를 활용해서 테이블 생성
- insert를 활용하여 테이블에 값 삽입
- select를 활용하여 테이블의 값 조회
- order by를 통해 값 정렬
- where과 비교 연산자를 통하여 원하는 조건 검색
- desc를 이용하여 테이블 구조 파악
다음 글에서는 수정과 삭제를 알아보겠습니다.