반응형
INSERT는 데이터를 레코드에 입력하기 위한 DML 문으로 보통 database TABLE의 데이터를 입력할 때 INSERT DML 문을 사용합니다.
INSERT DML 문 사용 방법
테이블 COLUMN 지정하지 않고 INSERT 하는 방법.
코드 예시.
Insert into [table 이름]
values ([value1, value2, value3...]);
질문: column을 지정하지 않고 데이터를 입력하세요.
USE sampleDB;
DROP TABLE IF EXISTS UserInfoForInsert;
CREATE TABLE UserInfoForInsert (
UserId int,
UserNm varchar(255),
UserAge int ,
UserLocation varchar(500)
);
-- 1. 테이블 COLUMN 지정하지 않고 INSERT 하는 방법
insert into UserInfoForInsert values ('202401','john',37,'USA');
-- INSERT 확인
select * from UserInfoForInsert;
COLUMN 지정하여 동시에 여러 행 INSERT DML 문 방법.
코드 예시.
Insert into [table 이름] ([column1, column2, column3...])
values ([value1, value2, value3...]);
USE sampleDB;
DROP TABLE IF EXISTS UserInfoForInsert;
CREATE TABLE UserInfoForInsert (
UserId int,
UserNm varchar(255),
UserAge int ,
UserLocation varchar(500)
);
-- 2. COLUMN 지정하여 동시에 여러 행 INSERT 방법.
insert into UserInfoForInsert(UserId,UserNm,UserAge)
values
('202401','Obama',60),
('202402','Biden',84),
('202403','Bush',90),
('202404','Hill',60),
('202405','Lee',43)
-- INSERT 확인
select * from UserInfoForInsert;
SELECT 결과 INSERT 방법.
코드 예시.
Insert into [table 이름] ([column1, column2, column3...])
SELECT [column1, column2, column3...]
FROM [table 이름];
질문: select 한 데이터를 다시 대상 테이블에 넣어주세요.
단, 마지막 column의 data는 임의로 insert 하세요.
-- 3. SELECT 결과 INSERT 방법
insert into UserInfoForInsert(UserId,UserNm,UserAge,UserLocation)
select UserId,UserNm,UserAge , 'white house'
from UserInfoForInsert;
-- INSERT 확인
select *
from UserInfoForInsert;
INSERT 문에 OUTPUT 사용.
테이블에 행을 삽입하고 OUTPUT 절을 사용하여 문의 결과를 테이블 변수를 통해 반환할 수 있습니다.
질문: INSERT 한 data를 바로 확인할 수 있도록 테이블 변수와 OUTPUT을 이용하여 출력하세요.
-- 4. INSERT 문에 OUTPUT 사용
USE sampleDB;
DROP TABLE IF EXISTS UserInfoForInsertOutput;
CREATE TABLE UserInfoForInsertOutput (
UserId int,
UserNm varchar(255),
UserAge int
);
DECLARE @outPutTable table(UserId int,
UserNm varchar(255),
UserAge int );
INSERT UserInfoForInsertOutput
OUTPUT INSERTED.UserId, INSERTED.UserNm, INSERTED.UserAge
INTO @outPutTable
VALUES ('202405','Lee',43);
select * from @outPutTable;
--table 들어갔는지 확인
-- select * from UserInfoForInsertOutput;
Table 전체 COPY.
코드예시.
select * into [NEW Table 명]
from [Table 명];
질문: select 문을 이용하여 신규 table에 모든 data를 입력하세요.
USE sampleDB;
DROP TABLE IF EXISTS UserInfoForInsertCopy;
select * into UserInfoForInsertCopy
from UserInfoForInsert;
--table 복사 확인
select *
from UserInfoForInsertCopy;
SSMS 이용하여 INSERT DML 문
SSMS 사용경로.
- Object Explorer - table이름 선택 - 오른쪽 마우스 - Edit Top 200 Rows 선택.
- Insert 할 데이터를 입력하고 enter 치면 바로 data가 반영됩니다.
- SSMS 캡처 화면.
반응형