NOT MATCHED BY SOURCE/TARGET

 

1. NOT MATCHED BY SOURCE

: 타겟 테이블에는 해당 데이터가 있지만, 기준 테이블에 없는 경우

> 타겟 테이블의 특정 rows를 DELETE 할 수 있다.

> 타겟 테이블의 특정 rows를 UPDATE 할 수 있다.

 

 

2. NOT MATCHED BY TARGET (=NOT MATCHED)

: 기준 테이블에는 해당 데이터가 있지만, 타겟 테이블에는 없는 경우

> 타겟 테이블에 새로운 rows를 INSERT 할 수 있다.

 

 

 

 

참고 사이트 

https://ggmouse.tistory.com/487

 

 

 

 

input 태그는 diplay:none 으로 해서 안 보이게 만든다.

// html 
<img id="profileImg" src="#" alt="" >
<button id="uploadProfileBtn" type="button">이미지 업로드</button>
<input id="fileUpload" type="file" style="display: none"/>

 

 

 

1. uploadProfileBtn 버튼을 클릭하면 fileUpload input이 클릭됨

2. fileUpload로 파일이 업로드 되면 previewImage()를 실행시킴

// JQuery
$("#uploadProfileBtn").on("click", function() {
  $("#fileUpload").click();
});
$("#fileUpload").change(function () {
  previewImage();
});

 

 

 

fileUpload에서 업로드한 파일을 가져와 profileImg에 넣는다.

function previewImage() {
    var preview = new FileReader();
    preview.onload = function (e) {
        $("#profileImg").attr("src", e.target.result);
    };
    preview.readAsDataURL($("#fileUpload")[0].files[0]);
};

 

 

 

 

 

참고 사이트

https://soomti.tistory.com/7

https://duckgugong.tistory.com/269

 

 

 

 

 

동작 방식

1. 부모창에서 window에 함수 등록

2. 자식창에서 호출

 

 

자식창

window.opener.controlParent(data); //자식창 data를 부모창에 전달

 

부모창

window.controlParent = (data) => {
	// 자식창에서 data 가져옴
	// 제어 내용 입력
}

 

 

 

 

 

참고사이트

https://velog.io/@he0_077/react-naver-sns-login-%EB%84%A4%EC%95%84%EB%A1%9C-%EC%97%B0%EB%8F%99

 

 

+ Recent posts