node 에서 디비 insert 할때 구문질문 입니다.

node 에서 디비 insert 할때 구문질문 입니다.

QA

node 에서 디비 insert 할때 구문질문 입니다.

본문


await pool.execute("INSERT INTO `g5_table` (`p_id`, `p_code`, `p_name`) VALUES ( ?, ?, ?)",[args.pid, args.code, args.name]);
 
// 현재 위처럼 디비테이블에 insert 가 되고 있습니다.
// 중복값이 나올때가 있어서 이를 해결하려고 하는데요..
// ON DUPLICATE KEY 를 이용해서 args.code, args.name 중복확인을 하려고 합니다.

 

안녕하세요. 

node 에서 위처럼 디비 처리가 되고 있습니다.

중복값을 걸러 내려고 ON DUPLICATE KEY 를 이용하면 될거 같은데요..

node 에서는 구문작성을 어떻게 해야 할지..^^;;

 

선배님들께 구문작성법을 물어봐야 할거 같아서요..

조언 부탁드립니다. ^^

 

이 질문에 댓글 쓰기 :

답변 1

https://dev.mysql.com/doc/refman/8.0/en/insert-on-duplicate.html

g5_table 의 구조가 정확히 어떻게 구성되어 있는지는 모르겠으나

대략적인 형태는 다음과 같이 표현할수 있습니다.


await pool.execute("INSERT INTO `g5_table` (`p_id`, `p_code`, `p_name`) VALUES ( ?, ?, ?) ON DUPLICATE KEY UPDATE `p_name` = ?",[args.pid, args.code, args.name, args.name]);
답변을 작성하시기 전에 로그인 해주세요.
전체 95
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT