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

MySQL berkata:# 1415 - Tidak diizinkan untuk mengembalikan set hasil dari suatu fungsi

Pesan kesalahan dalam hal ini menceritakan bagian terpenting:

Perilaku ini konsisten dengan apa yang didokumentasikan dalam manual MySQL pada prosedur dan fungsi tersimpan:

Anda menetapkan nilai ke @Pn . Anda variabel menggunakan pernyataan pilih yang mengembalikan hasil dan ini tidak diperbolehkan dalam suatu fungsi. Anda harus menghapus pernyataan ini dari kode Anda. RETURN river mengembalikan nilai result hasil , tetapi bukan hasil setel .

Saya juga khawatir Anda menggunakan variabel sesi (variabel yang didefinisikan sebagai @variable_name) yang digunakan bersama di seluruh koneksi, jadi kemungkinan beberapa panggilan ke fungsi yang sama pada saat yang sama dalam koneksi dapat mengganggu satu sama lain.

Fungsi yang disimpan hanya seharusnya mengembalikan satu nilai sebagai outputnya dengan return penyataan. Hal lain dianggap sebagai efek samping. Jika Anda ingin skrip MySQL Anda mengisi banyak variabel, maka Anda harus gunakan prosedur tersimpan, Anda tidak dapat menggunakan fungsi tersimpan.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Halaman web mengeluarkan tanda tanya sebagai ganti karakter unicode, meskipun set karakter dan susunannya benar?

  2. Perbandingan datetime MySQL dengan baris sebelumnya

  3. php untuk menambahkan data ke mySQL dari formulir POST

  4. Permintaan sql mentah Symfony2.3 dengan IN Clause

  5. mysql group_concat dengan hitungan di dalamnya?