Rumah > pangkalan data > tutorial mysql > Bagaimanakah `SELECT INTO` Oracle Berbeza daripada Standard SQL, dan Apakah Penyelesaiannya?

Bagaimanakah `SELECT INTO` Oracle Berbeza daripada Standard SQL, dan Apakah Penyelesaiannya?

Mary-Kate Olsen
Lepaskan: 2025-01-04 17:08:41
asal
646 orang telah melayarinya

How Does Oracle's `SELECT INTO` Differ from Standard SQL, and What are the Workarounds?

Tafsiran Unik Oracle tentang SELECT INTO

Manakala sintaks SQL standard untuk SELECT INTO melibatkan penciptaan jadual baharu dan mengisinya dengan data daripada jadual sedia ada, pelaksanaan Oracle berbeza dengan ketara.

Ralat Ditemui:

Apabila cuba melaksanakan standard SELECT * INTO new_table FROM old_table dalam Oracle, anda mungkin menghadapi ralat "kata kunci hilang" (ORA- 00905). Ini kerana sintaks Oracle untuk melaksanakan operasi yang sama memerlukan pendekatan yang berbeza.

Sintaks Oracle untuk Mencipta Jadual Baharu dan Mengisi Data:

Untuk berjaya melaksanakan SELECT INTO dalam Oracle, anda mempunyai beberapa pilihan:

  1. Jika jadual baharu sudah wujud:

    Gunakan pernyataan INSERT INTO:

    INSERT INTO new_table
    SELECT *
    FROM old_table;
    Salin selepas log masuk
  2. Jika anda ingin mencipta jadual baharu berdasarkan rekod dalam jadual sedia ada jadual:

    Gunakan CREATE TABLE ... AS PILIH pernyataan:

    CREATE TABLE new_table AS
    SELECT *
    FROM old_table;
    Salin selepas log masuk
  3. Jika tujuannya adalah untuk mencipta yang baru tetapi kosong jadual:

    Tambah klausa WHERE dengan syarat yang tidak boleh benar:

    CREATE TABLE new_table AS
    SELECT *
    FROM old_table
    WHERE 1 = 2;
    Salin selepas log masuk

Pertimbangan Penting:

  • CREATE TABLE ... AS SELECT kenyataan hanya mencipta jadual dengan unjuran yang sama seperti jadual sumber.
  • Jadual baharu tidak akan mempunyai sebarang kekangan, pencetus atau indeks yang diwarisi daripada jadual asal.

Atas ialah kandungan terperinci Bagaimanakah `SELECT INTO` Oracle Berbeza daripada Standard SQL, dan Apakah Penyelesaiannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan