database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 29395 게시물 읽기
No. 29395
insert시
작성자
김태희
작성일
2009-11-11 09:18
조회수
6,089

궁금한게 있어서 몇자 적습니다.


항상 sql를 하다보면 궁금한게 있는데요.


과연 제가 원하는게 원래 안 되는건지 제가 모르는건지 궁금하네요.


해당 레코드가 없다면 insert를 하고 싶은데요.


쉽게 풀어 말하자면 현재는 select를 먼저 한다음 없으면 insert를 하고 있습니다.


sql 한문장으로 처리가 가능한지요?


만약 그게 가능하다면 한수 가르쳐주세요..^^부탁드립니다.

이 글에 대한 댓글이 총 4건 있습니다.

http://dev.mysql.com/doc/refman/5.0/en/replace.html

REPLACE구문 쓰시면 됩니다.

박현우(lqez)님이 2009-11-11 09:53에 작성한 댓글입니다.

박현우님 답변에 정말 감사드립니다.

제가 잘 알지 못할수도 있는데요.

REPLACE 구문은 확인해보니깐

insert하고는 비슷하지만 옛 레코드는 삭제하고 새로운 레코드를 넣는것 같은데요.

REPLACE가 죄송한데 ON DUPLICATE KEY와 같은 건가요?

있을경우 업데이트는 하는건 아니고요. 그냥 단순히 없으면 insert 하기만을 원하거든요.

죄송합니다. 제가 질문을 정확하게 드렸어야 하는데 아마도 질문을 헷갈리게 한것 같네요.

아니면 혹시 제가 잘못알고 있다면 다시 한번만 정확하게 답변주시면 고맙겠습니다..^^

수고하세요.

김태희님이 2009-11-11 11:54에 작성한 댓글입니다. Edit

그렇군요, 제가 질문을 잘못 이해한 것 같습니다. 죄송합니다.

꼭 한문장으로 처리하고 싶으시다면 2가지 방법이 있습니다.

(1) Stored procedure로 처리한다 - 사실 한문장이 아닌게 되지요.
(2) Unique Key를 잘 걸어서, Insert시 오류가 나도록 한다.

이외의 방법이 있는지는 잘 모르겠습니다.

박현우(lqez)님이 2009-11-11 16:56에 작성한 댓글입니다.
이 댓글은 2009-11-11 16:56에 마지막으로 수정되었습니다.

답변을 늦게 확인했네요.


답변 정말 감사합니다. ^^

김태희님이 2009-11-23 17:26에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
29399두 테이블이 서로 부모테이블 역할을 하면 문제가 될까요? 에러나 나네요.
천성재
2009-11-16
5450
29398mysqlbinlog 실행 시 한글 깨짐
이성헌
2009-11-13
6437
29396cluster 관련 질문 [4]
김종섭
2009-11-12
6606
29395insert시 [4]
김태희
2009-11-11
6089
29394CURSOR를 이용한 UPDATE 방법 없나요? [1]
ships
2009-11-10
6073
29393auto_increment 필드 초기화? [2]
정대원
2009-11-09
5822
29391업데이트문 질문입니다. [1]
sjy
2009-11-08
5512
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다