Menyelesaikan masalah INSERT SELECT Statement dalam Oracle 11G
Apabila cuba untuk melaksanakan pernyataan INSERT SELECT dalam Oracle 11G, anda mungkin menghadapi "ORA- 00936: ralat ungkapan hilang". Ralat ini biasanya menunjukkan isu dengan sintaks pernyataan.
Untuk menyelesaikan isu ini, periksa pernyataan dengan teliti. Satu kesilapan biasa ialah memasukkan kata kunci VALUES dalam pernyataan INSERT SELECT. Dalam Oracle, kata kunci VALUES hanya digunakan apabila memasukkan nilai eksplisit ke dalam jadual, bukan semasa memilih nilai daripada jadual lain.
Sintaks yang betul untuk pernyataan INSERT SELECT ialah:
INSERT INTO table_name (column_list) SELECT column_list FROM source_table;
Oleh itu, pernyataan itu hendaklah diubah suai seperti berikut:
INSERT INTO table1 (col1, col2) SELECT t1.col1, t2.col2 FROM oldtable1 t1, oldtable2 t2;
Sintaks yang diperbetulkan ini sepatutnya berjaya laksanakan cantuman Cartesian antara oldtable1 dan oldtable2 dan masukkan baris yang terhasil ke dalam table1.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat ORA-00936 dengan Penyata Oracle 11g INSERT SELECT Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!