A

[SQL]Insert 문

· 17년 전 · 3563

9. Insert 문

TABLE에 열을 추가합니다. TABLE에 DATA를 넣는다는 말이죠~!

사용법은 다음과 같습니다.

INSERT INTO student
( name, secure_no, age, birth, city, eng_score, kor_score, math_score )
VALUES
( '최인희', '123456-0123456', 27, '18-JAN-72', 'SUWON', 100, 90, 95' );

사용할 때 가능하면 모든 값을 그 길이만큼 채워서 INSERT할 것을 추천합니다. 왜냐구요? 글세.. 여기서 student는 TABLE 명이고, 괄호안의 것들은 COLUMN NAME입니다.

그러니까 이런 구조네요.

INSERT INTO TABLE_NAME
( COLUMN NAMES )
VALUES
( COLUMN VALUES );

여기에서 COLUMN NAMES의 값들과 COLUMN VALUES의 값들의 수는 일치해야 합니다.

INSERT 문에서 COLUMN VALUES에 들어갈 수 있는 값들은 다음과 같습니다.

  • NULL
  • LITERAL VALUE(정수, 문자.. 모 이런 것~!)
  • 연산자와 함수가 있는 표현식(예를 들면, SUBSTR(lsRemark, 27, 2)같은 것)

물론 위의 세가지 값이 혼용될 수도 있죠.

INSERT 문에서 COLUMN NAMES의 DATA TYPE과 COLUMN VALUES의 DATA TYPE은 일치해야 합니다. 위에서 보면 문자나 날짜는 '로 막고, 숫자는 기냥 썼죠.. 일치하지 않으면 물론 ERROR가 발생합니다. 그리고 물론 TABLE의 CREATE시 지정한 크기를 넘는 DATA를 INSERT 해도 ERROR가 발생합니다.

그리고 PSEUDOCOLUMNS (의사열)이라는 것이 있는데,

  • USER : 현재 ORACLE에 연결되어 있는 USER ID.
  • SYSDATE : 현재 일시.

를 사용하면 편해요. USER는 문자열 COLUMN에 사용할 수 있고, SYSDATE는 DATE형 COLUMN에 사용할 수 있죠.

참~! INSERT할 경우 COLUMN NAMES는 생략할 수도 있어요. 아래와 같이..

INSERT INTO student
VALUES
('최인희', '123456-2123456', 27, '18-JAN-77', 'SUWON', 100, 90, 95');

모든 COLUMN에 INSERT한다는 가정이 포함되죠. 하지만 이건 별로 추천할 만한 방법이 아닌 듯 싶네요.

INSERT 문에서도 SELECT 문에서와 같이 SUB QUERY를 사용할 수 있어요. 그러면 COLUMN VALUES를 지정해서 넣는 대신에 SELECT 문을 사용할 수 있겠죠. 그럼 예를 들어볼까요?

INSERT INTO student
(name, secure_no, age, birth, city, eng_score, kor_score, math_score)
VALUES
SELECT name, secure_no, age, birth, city, eng_score, kor_score, math_score
FROM all_student ;

SUB QUERY를 이용하면 쉽게 많은 데이터를 생성할 수 있을 것 같네요. 테스트 데이터로 활용하면 더 좋겠죠?

쭈~욱 보니까, INSERT 문도 별로 어렵지 않죠? 그럼 담에는 UPDATE 문은 어떻게 사용하나 봐요~!

[이 게시물은 관리자님에 의해 2011-10-31 17:27:00 MySQL에서 이동 됨]
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
17년 전 조회 2,303
17년 전 조회 1,949
17년 전 조회 2,358
17년 전 조회 2,971
17년 전 조회 9,128
17년 전 조회 3,580
17년 전 조회 4,633
17년 전 조회 2,399
17년 전 조회 4,062
17년 전 조회 1,959
17년 전 조회 1,799
17년 전 조회 2,734
17년 전 조회 1,719
17년 전 조회 2,047
17년 전 조회 1,906
17년 전 조회 2,955
17년 전 조회 1,921
17년 전 조회 1,494
17년 전 조회 1,646
17년 전 조회 3,568
17년 전 조회 2,598
17년 전 조회 2,386
17년 전 조회 1,643
17년 전 조회 2,871
17년 전 조회 1,586
17년 전 조회 1,562
17년 전 조회 1,816
17년 전 조회 3,163
17년 전 조회 2,833
17년 전 조회 2,918
17년 전 조회 1,607
17년 전 조회 1,739
17년 전 조회 3,702
17년 전 조회 3,259
17년 전 조회 4,524
17년 전 조회 2,694
17년 전 조회 2,793
17년 전 조회 1,845
17년 전 조회 2,940
17년 전 조회 2,642
17년 전 조회 3,414
17년 전 조회 2,902
17년 전 조회 2,059
17년 전 조회 2,849
17년 전 조회 1,988
17년 전 조회 1,588
17년 전 조회 2,667
17년 전 조회 3,275
17년 전 조회 4,484
17년 전 조회 3,564
17년 전 조회 1,836
17년 전 조회 2,052
17년 전 조회 2,635
17년 전 조회 1,944
17년 전 조회 2,149
17년 전 조회 3,101
17년 전 조회 2,547
17년 전 조회 2,196
17년 전 조회 4,627
17년 전 조회 3,425
17년 전 조회 1,832
17년 전 조회 3,976
17년 전 조회 3,209
17년 전 조회 2,460
17년 전 조회 1,718
17년 전 조회 2,736
17년 전 조회 2,467
17년 전 조회 2,395
17년 전 조회 2,338
17년 전 조회 1,567
17년 전 조회 2,272
17년 전 조회 3,322
17년 전 조회 1,808
17년 전 조회 2,072
17년 전 조회 1,746
17년 전 조회 2,001
17년 전 조회 1,968
17년 전 조회 1,870
17년 전 조회 2,958
17년 전 조회 2,715
17년 전 조회 2,516
17년 전 조회 1,800
17년 전 조회 2,840
17년 전 조회 4,646
17년 전 조회 3,134
17년 전 조회 2,068
17년 전 조회 2,247
17년 전 조회 3,667
17년 전 조회 2,649
17년 전 조회 4,221
17년 전 조회 2,064
17년 전 조회 2,654
17년 전 조회 2,509
17년 전 조회 2,017
17년 전 조회 2,518
17년 전 조회 2,351
17년 전 조회 2,368
17년 전 조회 3,492
17년 전 조회 2,550
17년 전 조회 1,825