0
다음을 사용하여 이벤트 테이블에서 일부 행을 삭제하려고합니다.행을 갱신 할 수 없습니다.
DECLARE @PRODUCTION_ID int = 13811
DELETE openquery(TEST,
'SELECT p.id as production_id FROM EVENTS ev
LEFT JOIN production_seasons ps ON ev.production_season_id = ps.id
LEFT JOIN productions p ON ps.production_id = p.id')
where production_id = @PRODUCTION_ID
그러나 이벤트가 반환 될 때, 즉 비어있는 결과 집합이있을 때 쿼리가 실패합니다. 결과 집합이 비어 있으면 쿼리는 (0 row(s) affected)
을 반환합니다.
내가 오류는 다음과 같습니다
OLE DB 제공자 연결된 서버 "TEST"에 대한 "MSDASQL"이 메시지 "행이가 마지막으로 시작된 이후 일부 값은 가 변경되었을 수 있습니다 업데이트하기위한 찾을 수 없습니다 돌아왔다.이 독서.".
나는 무엇을 의미하는지 잘 모르겠다.
당신이 'OPENQUERY'로 삭제해야 할 이유가 있습니까?, 당신은 그 기록을 직접 삭제할 수 없습니까? – Lamak
링크는 MySQL 데이터베이스입니다. 다른 옵션이 없다고 생각하니? – Abs
테이블이 지정되지 않은 경우 (예 : SELECT EV. *) MySQL이 삭제할 행을 혼동하는 것처럼 보이기 때문에이 문제를 해결할 수있었습니다. 대답을 추가하면 누군가를 도울 수 있습니다. – Abs