Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara mendeklarasikan variabel di MySQL?

Ada tiga jenis variabel di MySQL:

  1. Variabel yang ditentukan pengguna (diawali dengan @ ):

    Anda dapat mengakses variabel yang ditentukan pengguna tanpa mendeklarasikannya atau menginisialisasinya. Jika Anda merujuk ke variabel yang belum diinisialisasi, ia memiliki nilai NULL dan jenis string.

    SELECT @var_any_var_name
    

    Anda dapat menginisialisasi variabel menggunakan SET atau SELECT pernyataan:

    SET @start = 1, @finish = 10;    
    

    atau

    SELECT @start := 1, @finish := 10;
    
    SELECT * FROM places WHERE place BETWEEN @start AND @finish;
    

    Variabel pengguna dapat diberi nilai dari kumpulan tipe data terbatas:integer, desimal, titik-mengambang, string biner atau nonbiner, atau nilai NULL.

    Variabel yang ditentukan pengguna adalah khusus sesi. Artinya, variabel pengguna yang ditentukan oleh satu klien tidak dapat dilihat atau digunakan oleh klien lain.

    Mereka dapat digunakan di SELECT kueri menggunakan Teknik variabel pengguna MySQL lanjutan .

  2. Variabel Lokal (tanpa awalan) :

    Variabel lokal perlu dideklarasikan menggunakan DECLARE sebelum mengaksesnya.

    Mereka dapat digunakan sebagai variabel lokal dan parameter input di dalam prosedur tersimpan:

    DELIMITER //
    
    CREATE PROCEDURE sp_test(var1 INT) 
    BEGIN   
        DECLARE start  INT unsigned DEFAULT 1;  
        DECLARE finish INT unsigned DEFAULT 10;
    
        SELECT  var1, start, finish;
    
        SELECT * FROM places WHERE place BETWEEN start AND finish; 
    END; //
    
    DELIMITER ;
    
    CALL sp_test(5);
    

    Jika DEFAULT klausa tidak ada, nilai awalnya adalah NULL .

    Lingkup variabel lokal adalah BEGIN ... END blok di mana ia dideklarasikan.

  3. Variabel Sistem Server (diawali dengan @@ ):

    Server MySQL memelihara banyak variabel sistem dikonfigurasi ke nilai default. Mereka dapat bertipe GLOBAL , SESSION atau BOTH .

    Variabel global mempengaruhi operasi keseluruhan server sedangkan variabel sesi mempengaruhi operasinya untuk koneksi klien individu.

    Untuk melihat nilai saat ini yang digunakan oleh server yang sedang berjalan, gunakan SHOW VARIABLES pernyataan atau SELECT @@var_name .

    SHOW VARIABLES LIKE '%wait_timeout%';
    
    SELECT @@sort_buffer_size;
    

    Mereka dapat diatur saat server mulai menggunakan opsi pada baris perintah atau dalam file opsi. Sebagian besar dapat diubah secara dinamis saat server berjalan menggunakan SET GLOBAL atau SET SESSION :

    -- Syntax to Set value to a Global variable:
    SET GLOBAL sort_buffer_size=1000000;
    SET @@global.sort_buffer_size=1000000;
    
    -- Syntax to Set value to a Session variable:
    SET sort_buffer_size=1000000;
    SET SESSION sort_buffer_size=1000000;
    SET @@sort_buffer_size=1000000;
    SET @@local.sort_buffer_size=10000;
    


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Skrip Bash untuk memasukkan nilai di MySQL

  2. Dapatkan ID kunci utama rekaman baru dari kueri penyisipan MySQL?

  3. Apakah ada alternatif untuk TOP di MySQL?

  4. Cara Mendapatkan Data 1 Jam Terakhir di MySQL

  5. Bagaimana cara mengubah tipe data untuk kolom di MySQL?