Micrsoft SQL 서버에서 삭제 된 쿼리를 실행하여 원격 mySQL 테이블의 테이블을 지우려고합니다.SQL 서버 openquery - "키 열 정보가 부족하거나 잘못되었습니다. 업데이트로 인해 영향을받는 행이 너무 많습니다."
쿼리는 다음과 같습니다
delete from OPENQUERY(WEB_DB,'select id,university_name,college_name from table_name');
이 오류를 반환 :
OLE DB provider "MSDASQL" for linked server "WEB_DB" returned message "Key column information is insufficient or incorrect. Too many rows were affected by update.". Msg 7345, Level 16, State 1, Line 1 The OLE DB provider "MSDASQL" for linked server "WEB_DB" could not delete from table "select id,university_name,college_name from table_name". Updating did not meet the schema requirements.
다음과 같이 테이블을 만드는 데 사용되는 SQL은 다음과 같습니다 흥미롭게도이에 나타나지 않습니다
CREATE TABLE IF NOT EXISTS `table_name` (
`pk` int(11) AUTO_INCREMENT,
`studentid` int(11) default NULL,
`university_name` varchar(255) default NULL,
`college_name` varchar(255) default NULL,
CONSTRAINT PRIMARY KEY(`pk`)
);
을 원격 데이터베이스 레코드의 일부를 삭제합니까 ~ ~ 900, fi에 대한 삭제 명령을 실행해야합니다 처음에는 한계가 ~ 700으로 줄어들어 한계가 약 200 줄인 것처럼 보입니다!
도움을 주시면 감사하겠습니다.
감사 요나
테이블에 기본 키가 있습니까? –
현재 ID가 중복 값을 가질 수 있으므로 새 열을 만들어야합니다. – Jona
와우 ... null 일 수도 있고 중복 된 열을 포함하는 매우 잘못된 이름 일 수도 있습니다. 나는 너와 나 혼란에 대처해야한다는 것이 기쁘다. –