집 >데이터 베이스 >MySQL 튜토리얼 >Oracle 11g INSERT SELECT 문에서 ORA-00936 오류가 발생하는 이유는 무엇입니까?
Oracle 11G에서 INSERT SELECT 문 문제 해결
Oracle 11G에서 INSERT SELECT 문을 실행하려고 하면 "ORA- 00936: 표현 누락' 오류. 이 오류는 일반적으로 명령문 구문에 문제가 있음을 나타냅니다.
이 문제를 해결하려면 명령문을 주의 깊게 검사하십시오. 일반적인 실수 중 하나는 INSERT SELECT 문에 VALUES 키워드를 포함하는 것입니다. Oracle에서 VALUES 키워드는 다른 테이블에서 값을 선택할 때가 아니라 테이블에 명시적인 값을 삽입할 때만 사용됩니다.
INSERT SELECT 문의 올바른 구문은 다음과 같습니다.
INSERT INTO table_name (column_list) SELECT column_list FROM source_table;
따라서 명령문을 다음과 같이 수정해야 합니다.
INSERT INTO table1 (col1, col2) SELECT t1.col1, t2.col2 FROM oldtable1 t1, oldtable2 t2;
이 수정된 구문은 oldtable1 간의 데카르트 조인을 성공적으로 실행해야 합니다. 및 oldtable2를 입력하고 결과 행을 table1에 삽입합니다.
위 내용은 Oracle 11g INSERT SELECT 문에서 ORA-00936 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!