이 내용은 2011년 6월 현재 SQL2011(코드명 Denali) Beta를 기준으로 작성 되었으며 SQL2011(코드명 Denali) 공식버전(RTM) 발표까지 꾸준히 업데이트 예정입니다.
아울러, 현재 Beta버전이지만 강좌를 따라해 보시는데 아무 문제 없으실거에요. 도움 되시길 바랍니다.
==================================================================================================



안녕하세요. 이스트럭(강동운)입니다.

 

오늘의 주제는 DML 중에서 INSERT 항목이 되겠습니다!

 

DML 은 Data Manipulation Language의 약자로써.. 데이터 조작어에 해당됩니다.

 

이에 관련되서는.. SELECT, INSERT, UPDATE, DELETE가 해당이 됩니다 ^^ 이 중에서 우리는 오늘 INSERT 에 대해서 알아볼 예정입니다!

 

이와 관련해서 임시 테이블을 생성해보도록 하겠습니다.

 

--//회원(회원번호, 회원아이디, 회원이름, 회원나이, 회원지역)

CREATE TABLE MemberSelect

(

 MemberIDX INT

, MemberID  VARCHAR(10)

, MemberName VARCHAR(20)

, MemberAge INT

, MemberArea   VARCHAR(4)

, CreateDate  DATETIME

)

GO

 

데이터를 INSERT 하는 방법에는 여러가지가 있습니다.

 

그중 첫번째.. 모든 컬럼명을 기술하기!

 

INSERT INTO 테이블명(컬럼1, 컬럼2, 컬럼3 ....) VALUES(컬럼1의 값, 컬럼2의 값, 컬럼3의 값 ...)

GO

 

INSERT INTO MemberSelect(MemberIDX, MemberID, MemberName, MemberAge, MemberAre VALUES(1, 'hong', '홍길동',20,'서울','2011-01-01')

GO

1.png

 

 

--//컬럼명을 기술하지 않고 입력하는 두번째 방법

주의:  이 방법은 VALUES에 순서데로 기술된 컬럼의 순서가.. 실제로 생성한 테이블의 컬럼수 와 순서가 반드시 맞아야 합니다.

INSERT INTO MemberSelect
VALUES(2, 'lee', '이순신',30,'경기','2011-02-01')
GO

2.png  

 

3번째! SELECT 를 활용한 INSERT 문법

INSERT INTO MemberSelect
(
 MemberIDX
, MemberID
, MemberName
, MemberAge
, MemberArea
, CreateDate
)
SELECT
 3
, 'kim'
, '김유신'
, 40
, '경남'
, '2011-03-01'
GO

3.png

 

4번째 SELECT 절에 ROW 명을 기술하는 방법!

 

INSERT INTO MemberSelect
(
 MemberIDX
, MemberID
, MemberName
, MemberAge
, MemberArea
, CreateDate
)
SELECT
 MemberIDX = 4
, MemberID = 'kang'
, MemberName = '강감찬'
, MemberAge = 25
, MemberArea = '경기'
, CreateDate = '2011-04-01'
GO

4.png   

 

 

SQL 2008 부터 지원하는 다중 행 입력!

5.png

 

 

지금까지 가장 기본적으로 INSERT 하는 방법을 알아봤습니다 ^^

 

사실 데이터 입력방법은 이것 보다 훨씬 다양하고 많습니다~~!

 

저는 개인 적으로.. 테이블에 컬럼이 많아지면.. 어떤 컬럼이 어떤 데이터인지 구분하기 힘들기 때문에.. 4번 방법을 주로 이용합니다.

 

감사합니다.

 

다중행 입력관련된 좋은 글: http://sqlsql.tistory.com/entry/Array-Insert

 

작성일: 2011.05.24


[출처] SQLER.COM http://www.sqler.com/383042


SQL2011(코드명 Denali) 시리즈 강좌 리스트
[SQL2011강좌] 1. 코드명 Denali 설치 방법
[SQL2011강좌] 2. SSMS 접속 및 간단한 쿼리 실행
[SQL2011강좌] 3. SQL Server 의 MDF, LDF 그리고 데이터베이스 생성하기
[SQL2011강좌] 4. DDL 1탄: 테이블 생성
[SQL2011강좌] 5. DDL 2탄: 쿼리를 이용한 테이블 컬럼 추가 및 삭제
[SQL2011강좌] 6. Primary key와 Unique 제약조건
[SQL2011강좌] 7. DML 1탄 INSERT
[SQL2011강좌] 8. DML 1탄 INSERT(identity 속성)
[SQL2011강좌] 9. Sequence
[SQL2011강좌] 10. pubs, northwind Database 예제 설치
[SQL2011강좌] 11. SELECT(단일 테이블)
[SQL2011강좌] 12. SELECT(JOIN)
[SQL2011강좌] 13. UPDATE, DELETE 절
[SQL2011강좌] 14. DISTINCT, UNION, UNION ALL 키워드
[SQL2011강좌] 15. ORDER BY, GROUP BY, HAVING
[SQL2011강좌] 16. SubQuery(서브쿼리)
[SQL2011강좌] 17. 뷰에 대한 이해 및 생성, 수정, 삭제
[SQL2011강좌] 18. 저장 프로시저에 대한 이해, 생성, 수정, 삭제
[SQL2011강좌] 19. 인덱스에 대한 이해
[SQL2011강좌] 20. 클러스터드 인덱스와 넌 클러스터드 인덱스
[SQL2011강좌] 21. 트랜잭션에 대한이해
[SQL2011강좌] 22. 트랜잭션의 격리수준 4가지
[SQL2011강좌] 23. 잠금에 대한 이해
[SQL2011강좌] 24. 백업과 복구에 대한 이해(풀백업, 차등백업, 트랜잭션 로그 백업)
[SQL2011강좌] 25. 백업과 복구 전략
[SQL2011강좌] 26. 커서란?




SQL2011(코드명 Denali) 시리즈 동영상 강좌 리스트
[SQL2011 동영상 강좌] 1. 코드명 Denali 설치 방법
[SQL2011 동영상 강좌] 2. SSMS 접속 및 간단한 쿼리 실행
[SQL2011 동영상 강좌] 3. SQL Server 의 MDF, LDF 그리고 데이터베이스 생성하기
[SQL2011 동영상 강좌] 4. DDL 1탄: 테이블 생성
[SQL2011 동영상 강좌] 5. DDL 2탄: 쿼리를 이용한 테이블 컬럼 추가 및 삭제
[SQL2011 동영상 강좌] 6. Primary key와 Unique 제약조건
[SQL2011 동영상 강좌] 7. DML 1탄 INSERT
[SQL2011 동영상 강좌] 8. DML 1탄 INSERT(identity 속성)
[SQL2011 동영상 강좌] 9. Sequence
[SQL2011 동영상 강좌] 10. pubs, northwind Database 예제 설치
[SQL2011 동영상 강좌] 11. SELECT(단일 테이블)
[SQL2011 동영상 강좌] 12. SELECT(JOIN)
[SQL2011 동영상 강좌] 13. UPDATE, DELETE 절
[SQL2011 동영상 강좌] 14. DISTINCT, UNION, UNION ALL 키워드
[SQL2011 동영상 강좌] 15. ORDER BY, GROUP BY, HAVING
[SQL2011 동영상 강좌] 16. SubQuery(서브쿼리)
[SQL2011 동영상 강좌] 17. 뷰에 대한 이해 및 생성, 수정, 삭제
[SQL2011 동영상 강좌] 18. 저장 프로시저에 대한 이해, 생성, 수정, 삭제
[SQL2011 동영상 강좌] 19. 인덱스에 대한 이해
[SQL2011 동영상 강좌] 20. 클러스터드 인덱스와 넌 클러스터드 인덱스
[SQL2011 동영상 강좌] 21. 트랜잭션에 대한이해
[SQL2011 동영상 강좌] 22. 트랜잭션의 격리수준 4가지
[SQL2011 동영상 강좌] 23. 잠금에 대한 이해
[SQL2011 동영상 강좌] 24. 백업과 복구에 대한 이해(풀백업, 차등백업, 트랜잭션 로그 백업)
[SQL2011 동영상 강좌] 25. 백업과 복구 전략
[SQL2011 동영상 강좌] 26. 커서란?