Pengisytiharan dan penggunaan pembolehubah MySQL
Dalam MySQL, untuk menggunakan pembolehubah dalam pertanyaan kedua, mereka perlu diisytiharkan dan dimulakan terlebih dahulu.
Pembolehubah takrif pengguna (bermula dengan @)
- Tiada pengisytiharan diperlukan.
- Boleh diakses terus tanpa pengisytiharan atau permulaan terlebih dahulu.
- Nilai ialah NULL apabila tidak dimulakan dan jenis data ialah rentetan.
- Gunakan pernyataan SET atau SELECT untuk permulaan.
- Khusus sesi (tidak boleh dilihat atau digunakan oleh pelanggan lain).
- Contohnya:
<code class="language-sql">SET @start = 1, @finish = 10;
SELECT * FROM places WHERE place BETWEEN @start AND @finish;</code>
Salin selepas log masuk
Pembolehubah setempat (tiada awalan)
- Memerlukan kenyataan DECLARE.
- digunakan sebagai parameter input atau pembolehubah setempat dalam prosedur tersimpan.
- Contohnya:
<code class="language-sql">DECLARE start INT unsigned DEFAULT 1;
DECLARE finish INT unsigned DEFAULT 10;</code>
Salin selepas log masuk
- Jika klausa DEFAULT tiada, nilai awalnya ialah NULL.
- Skop terhad kepada blok BEGIN...END di mana ianya diisytiharkan.
Pembolehubah sistem pelayan (bermula dengan @@)
- Pembolehubah sistem diuruskan oleh pelayan MySQL.
- Boleh GLOBAL (global), SESI (sesi) atau KEDUA-DUANYA (kedua-duanya).
- Menjejaskan operasi pelayan (GLOBAL) atau sambungan pelanggan individu (SESSION).
- Gunakan SHOW VARIABLE atau PILIH @@var_name untuk melihat.
- Gunakan SET GLOBAL atau SET SESSION untuk mengubah suai secara dinamik.
- Contohnya:
<code class="language-sql">SET GLOBAL sort_buffer_size=1000000;</code>
Salin selepas log masuk
Atas ialah kandungan terperinci Apakah Perbezaan Antara Pembolehubah Ditakrifkan Pengguna, Tempatan dan Sistem dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!