>데이터 베이스 >MySQL 튜토리얼 >Oracle 11g INSERT SELECT 문에서 ORA-00936 오류가 발생하는 이유는 무엇입니까?

Oracle 11g INSERT SELECT 문에서 ORA-00936 오류가 발생하는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-29 17:50:11637검색

Why Am I Getting an ORA-00936 Error with My Oracle 11g INSERT SELECT Statement?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.