& nama pembolehubah. ;". Pembolehubah sementara hanya sah dalam pernyataan SQL yang menggunakannya, dan nilai pembolehubah tidak boleh dikekalkan."/> & nama pembolehubah. ;". Pembolehubah sementara hanya sah dalam pernyataan SQL yang menggunakannya, dan nilai pembolehubah tidak boleh dikekalkan.">

Rumah  >  Artikel  >  pangkalan data  >  Adakah Oracle mempunyai pembolehubah sementara?

Adakah Oracle mempunyai pembolehubah sementara?

青灯夜游
青灯夜游asal
2022-04-18 18:04:573930semak imbas

Oracle mempunyai pembolehubah sementara. Dalam pangkalan data Oracle, anda boleh menggunakan pembolehubah untuk menulis pernyataan sql umum Jika simbol "&" dan "&&" digunakan sebelum pembolehubah, maka pembolehubah itu ialah pembolehubah sementara dan sintaksnya ialah "penyataan sql>&nama pembolehubah; " . Pembolehubah sementara hanya sah dalam pernyataan SQL yang menggunakannya, dan nilai pembolehubah tidak boleh dikekalkan.

Adakah Oracle mempunyai pembolehubah sementara?

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi Oracle 11g, komputer Dell G3.

oracle mempunyai pembolehubah sementara.

Dalam pangkalan data Oracle, anda boleh menggunakan pembolehubah untuk menulis pernyataan sql umum Apabila menjalankan pernyataan sql, masukkan nilai untuk pembolehubah, dan pembolehubah akan digantikan dengan nilai ini dalam. pernyataan sql.

Pembolehubah sementara hanya sah dalam pernyataan SQL yang menggunakannya Nilai pembolehubah tidak boleh dikekalkan juga dipanggil pembolehubah gantian. Dalam pernyataan SQL, jika simbol "&" dan "&&" digunakan di hadapan pembolehubah, ini bermakna pembolehubah itu adalah pembolehubah sementara Apabila penyataan SQL dilaksanakan, sistem akan menggesa pengguna untuk memberikan yang tertentu data untuk pembolehubah.

Berikut ialah pernyataan pertanyaan tanpa menggunakan pembolehubah sementara:

Adakah Oracle mempunyai pembolehubah sementara?

Jika anda menggunakan & untuk mengisytiharkan pembolehubah sementara:

SQL> list
  1  select &chang1,ename,job
  2  from scott.emp
  3* where &chang1>&temp
SQL> run
  1  select &chang1,ename,job
  2  from scott.emp
  3* where &chang1>&temp
输入 chang1 的值:  empno
原值    1: select &chang1,ename,job
新值    1: select empno,ename,job
输入 chang1 的值:  empno
输入 temp 的值:  7790
原值    3: where &chang1>&temp
新值    3: where empno>7790
 
     EMPNO ENAME      JOB
---------- ---------- ---------
      7839 KING       PRESIDENT
      7844 TURNER     SALESMAN
      7876 ADAMS      CLERK
      7900 JAMES      CLERK
      7902 FORD       ANALYST
      7934 MILLER     CLERK

Tiga pembolehubah sementara ditakrifkan di atas, tetapi dua pembolehubah sementara mewakili nilai yang sama Apabila menggunakan & untuk mentakrifkan pembolehubah, anda perlu memasukkan nilai chang1 dua kali

Apabila menggunakan &&, jika anda mentakrifkan sementara. pembolehubah Jika nama adalah sama, anda hanya perlu memasukkan nilai sekali

Pembolehubah sementara yang ditakrifkan menggunakan &&:

SQL> run
  1  select &&chang1,ename,job
  2  from scott.emp
  3* where &&chang1>&&temp
输入 chang1 的值:  empno
原值    1: select &&chang1,ename,job
新值    1: select empno,ename,job
输入 temp 的值:  7790
原值    3: where &&chang1>&&temp
新值    3: where empno>7790
 
     EMPNO ENAME      JOB
---------- ---------- ---------
      7839 KING       PRESIDENT
      7844 TURNER     SALESMAN
      7876 ADAMS      CLERK
      7900 JAMES      CLERK
      7902 FORD       ANALYST
      7934 MILLER     CLERK

Melalui perbandingan di atas, anda boleh mencari perbezaan antara pembolehubah sementara ditakrifkan oleh & dan &&, tetapi di atas Setiap kali pembolehubah sementara yang ditakrifkan dimasukkan, nilai asal dan nilai baharu akan dipaparkan secara lalai Jika anda tidak mahu ia dipaparkan, anda boleh menggunakan arahan berikut:

SQL> set verify off;
SQL> run
  1  select &&chang1,ename,job
  2  from scott.emp
  3* where &&chang1>&&temp
 
     EMPNO ENAME      JOB
---------- ---------- ---------
      7839 KING       PRESIDENT
      7844 TURNER     SALESMAN
      7876 ADAMS      CLERK
      7900 JAMES      CLERK
      7902 FORD       ANALYST
      7934 MILLER     CLERK
 
已选择6行。

Jika anda mahu ia dipaparkan, anda boleh menggunakan:

SQL> set verify on
SQL> run
  1  select &&chang1,ename,job
  2  from scott.emp
  3* where &&chang1>&&temp
原值    1: select &&chang1,ename,job
新值    1: select empno,ename,job
原值    3: where &&chang1>&&temp
新值    3: where empno>7790
 
     EMPNO ENAME      JOB
---------- ---------- ---------
      7839 KING       PRESIDENT
      7844 TURNER     SALESMAN
      7876 ADAMS      CLERK
      7900 JAMES      CLERK
      7902 FORD       ANALYST
      7934 MILLER     CLERK

Tutorial yang disyorkan: "Tutorial Oracle"

Atas ialah kandungan terperinci Adakah Oracle mempunyai pembolehubah sementara?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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