Dalam pangkalan data MySQL, prosedur tersimpan ialah program yang terdiri daripada satu atau lebih pernyataan SQL Atur cara ini disusun dan disimpan dalam pangkalan data untuk digunakan semula. Prosedur tersimpan boleh menerima parameter dan mengembalikan nilai. Dalam artikel ini, kami akan memberi tumpuan kepada nilai pulangan prosedur tersimpan mysql.
Nilai pulangan prosedur tersimpan MySQL boleh digunakan untuk menentukan kejayaan atau kegagalan pelaksanaan program, atau untuk mengembalikan hasil pelaksanaan program kepada pemanggil. Dalam MySQL, terdapat tiga jenis nilai pulangan daripada prosedur tersimpan: integer, nombor titik terapung, dan rentetan.
Nilai pulangan jenis integer
Dalam mysql, anda boleh menggunakan pernyataan RETURN untuk mengembalikan nilai pulangan jenis integer. Nilai pulangan jenis integer boleh berupa sebarang nilai integer, seperti 0, 1, 2, dsb. Jika prosedur tersimpan berjaya dilaksanakan, 0 dikembalikan jika prosedur tersimpan gagal, nilai integer bukan sifar dikembalikan. Jika anda ingin mengembalikan nilai integer tersuai, anda boleh menggunakan pernyataan RETURN untuk menentukan nilai dalam prosedur tersimpan.
Berikut ialah contoh prosedur tersimpan yang mengembalikan nilai pulangan integer:
DELIMITER $$
CIPTA PROSEDUR test()
MULAKAN
DECLARE res INT;
PILIH COUNT(*) KE res DARIPADA pengguna;
JIKA res>0 KEMUDIAN
PILIH res;
LAIN
PILIH 0;
TAMAT JIKA;
KEMBALIKAN 1;
END $$
DELIMITER ;
Dalam contoh di atas, ujian prosedur tersimpan mengira bilangan rekod dalam jadual pengguna dan menyimpan keputusan ke pembolehubah res. Jika res lebih besar daripada 0, keluarkan hasilnya, jika tidak keluarkan 0. Selepas prosedur tersimpan dilaksanakan, nilai pulangan ialah 1.
Nilai pulangan jenis titik terapung
Prosedur tersimpan dalam mysql juga menyokong nilai pulangan jenis titik terapung. Untuk mengembalikan nilai titik terapung, gunakan pernyataan RETURN. Berikut ialah contoh prosedur tersimpan yang mengembalikan nilai pulangan jenis apungan:
DELIMITER $$
CIPTA PROSEDUR ujian2()
MULAKAN
ISYTIHKAN res FLOAT;
PILIH JUMLAH (jumlah) MENJADI res DARIPADA pesanan;
JIKA res>0 MAKA
PILIH res;
LAIN
PILIH 0;
TAMAT JIKA;
KEMBALIKAN 1.0;
TAMAT$$
DELIMITER ;
Dalam contoh di atas, prosedur tersimpan test2 mengira jumlah keseluruhan pesanan dalam jadual pesanan dan menyimpan hasilnya kepada pembolehubah res. Jika res lebih besar daripada 0, keluarkan hasilnya, jika tidak keluarkan 0. Selepas prosedur tersimpan dilaksanakan, nilai pulangan ialah 1.0.
Nilai pulangan jenis rentetan
Prosedur tersimpan dalam mysql juga menyokong nilai pulangan jenis rentetan. Untuk mengembalikan nilai rentetan, gunakan pernyataan RETURN. Berikut ialah contoh prosedur tersimpan yang mengembalikan nilai pulangan jenis rentetan:
DELIMITER $$
CIPTA PROSEDUR test3()
MULAKAN
ISYTIHKAN res VARCHAR(100);
PILIH nama KE DALAM res DARIPADA pengguna WHERE id=1;
JIKA res BUKAN NULL MAKA
PILIH res;
LAIN
PILIH 'tidak diketahui';
TAMATKAN JIKA;
KEMBALIKAN ' Hello, World ';
END$$
DELIMITER ;
Dalam contoh di atas, prosedur tersimpan test3 memperoleh nama pengguna dengan id=1 daripada jadual pengguna dan menyimpan hasilnya ke pembolehubah res. Jika res tidak kosong, hasilnya adalah output, jika tidak "tidak diketahui" adalah output. Selepas prosedur tersimpan dilaksanakan, nilai pulangan ialah "Hello, World".
Ringkasan
Nilai pulangan prosedur tersimpan MySQL boleh digunakan untuk menentukan kejayaan atau kegagalan pelaksanaan program, atau untuk mengembalikan hasil pelaksanaan program kepada pemanggil. Dalam MySQL, terdapat tiga jenis nilai pulangan daripada prosedur tersimpan: integer, nombor titik terapung, dan rentetan. Untuk mengembalikan nilai pulangan, gunakan pernyataan RETURN dan nyatakan nilai yang sesuai.
Di atas adalah pengenalan terperinci kepada nilai pulangan prosedur tersimpan mysql. Prosedur tersimpan boleh meningkatkan kecekapan pelaksanaan pernyataan SQL dan kadar penggunaan semula kod, jadi mempelajari prosedur tersimpan sangat membantu untuk meningkatkan kecekapan pembangunan pangkalan data.
Atas ialah kandungan terperinci Mari kita bincangkan tentang nilai pulangan prosedur tersimpan mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!