INSERT문
- 데이터 추가. CRUD의 C
- 데이터 추가시 테이블 생성 컬럼 순서와 insert문의 컬럼순서는 상관없다
- insert 시 기본값을 갖는 컬럼과 null을 허용하는 컬럼은 생략할 수도 있다
- null이 아닌 값 또는 다른 기본값을 부여하고 싶을 때는 명시한다
insert into 테이블이름(컬럼1,컬럼2,...) values(컬럼1값,컬럼2값,...);
user 테이블에 데이터 추가하기
첫번째 user
id : honggildong001 pw : hong1234 name : 홍길동
phone : 010-1111-1111 email : hong@test.com
두번째 user
id : admin pw : admin1234 name : 관리자
email : admin@test.com author : A
세번째 user
id : kimkim001 pw : kimkkk name : 김크크
phone : 010-1111-2222 email : kim@test.com state : D
네번째 user
id : test004 pw : 1234 name : 테스터4
email : test4@test.com author : A state : D
insert into user (uid, upw, uname, uphone, uemail)
values ('honggildong001','hong1234','홍길동', '010-1111-1111','hong@test.com');
insert into user (uid, upw, uname, uemail, uauthor)
values ('admin','admin1234','관리자', 'admin@test.com','A');
insert into user (uid, upw, uname, uphone, uemail, ustate)
values ('kimkim001','kimkkk','김크크', '010-1111-2222','kim@test.com', 'D');
insert into user (uid, upw, uname, uemail, uauthor, ustate)
values ('test004','1234','테스터4', 'test4@test.com','A', 'D');
select * from user;
notice_board에 데이터 추가하기
2번 공지사항(작성자는 test004 아이디를 갖는 회원입니다)
title : '첫번째 공지테스트 합니다.' | content : '첫번째 테스트 입니다' | top_yn : 'Y' | state : 'D'
3번 공지사항(작성자는 tester1 아이디를 갖는 회원입니다)
title : '공지기능 테스트입니다' | content : '공지사항 잘 올라가나요?'
4번 공지사항(작성자는 admin 아이디를 갖는 회원입니다)
title : '오늘 일정 공지합니다' | content : 'DML의 select문을 배우도록 하겠습니다'
5번 공지사항(작성자는 admin 아이디를 갖는 회원입니다)
title : '중요한 사실을 공지합니다' | content : '2주 후에 개인프로젝트를 시작합니다' | top_yn : 'Y'
insert into notice_board (uno,title,content,top_yn,state)
values (5,'첫번째 공지테스트 합니다.','첫번째 테스트 입니다','Y','D');
insert into notice_board (uno,title,content)
values (1,'공지기능 테스트입니다','공지사항 잘 올라가나요?');
insert into notice_board (uno,title,content)
values (3,'오늘 일정 공지합니다','DML의 select문을 배우도록 하겠습니다');
insert into notice_board (uno,title,content,top_yn)
values (3,'중요한 사실을 공지합니다','2주 후에 개인프로젝트를 시작합니다','Y');
select * from notice_board;
INSERT문 변형 문법
1.모든 컬럼에 데이터를 추가하는 경우
기본값(default)나 null을 허용하는 경우에도 전부 값을 명시해야 한다.
insert into [테이블명] values([테이블 생성시 컬럼 순으로 모든 컬럼값 나열]);
insert into sample value('subject값1','name값1',10,'sample_data값1');
select * from sample;
2.한번의 쿼리문으로 여러 행을 추가하는 경우
insert into [테이블명] values(),(),();
insert into sample
values('subject값2','name값2',20,'sample_data값2')
,('subject값3','name값3',30,'sample_data값3')
,('subject값4','name값4',40,'sample_data값4');
select * from sample;
3.다른 테이블에 있는 데이터를 복사해서 추가하기
insert into [테이블명] ([컬럼명]) select문;
'MySQL' 카테고리의 다른 글
[MySQL] SELECT문 WHERE BETWEEN, IN(),LIKE, 서브쿼리 (0) | 2024.09.03 |
---|---|
[MySQL] DML 데이터조작어 SELECT문 (2) | 2024.09.02 |
[MySQL] DDL 데이터 정의어 (0) | 2024.08.31 |
[MySQL] 유저 생성, 권한 부여 (0) | 2024.08.31 |
[MySQL] DB, DBMS, SQL, 정규화 (0) | 2024.08.30 |