Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL cho biết:# 1415 - Không được phép trả về tập hợp kết quả từ một hàm

Thông báo lỗi trong trường hợp này cho biết phần quan trọng nhất:

Hành vi này phù hợp với những gì được ghi trong sổ tay MySQL về các thủ tục và chức năng được lưu trữ:

Bạn chỉ định giá trị cho @Pn của mình các biến sử dụng câu lệnh select trả về tập kết quả và điều này không được phép trong một hàm. Bạn phải xóa các câu lệnh này khỏi mã của mình. RETURN river trả về một kết quả giá trị , nhưng không phải là kết quả set .

Tôi cũng lo lắng rằng bạn sử dụng các biến phiên (các biến được định nghĩa là @variable_name) được chia sẻ trên một kết nối, do đó, có khả năng nhiều lệnh gọi đến cùng một hàm cùng một lúc trong một kết nối có thể ảnh hưởng lẫn nhau.

Một hàm được lưu trữ chỉ được cho là trả về một giá trị duy nhất làm đầu ra của nó với return bản tường trình. Bất cứ điều gì khác được coi là một tác dụng phụ. Nếu bạn muốn tập lệnh MySQL của mình điền nhiều biến, thì bạn phải sử dụng một thủ tục được lưu trữ, bạn không thể sử dụng một chức năng được lưu trữ.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thay đổi cấu hình cơ sở dữ liệu CakePHP trên toàn cầu

  2. Chỉ hiển thị năm một lần trong vòng lặp lưu trữ

  3. JSON_DEPTH () - Tìm độ sâu tối đa của tài liệu JSON trong MySQL

  4. Làm thế nào để triển khai ứng dụng asp.net trên windows azure ..?

  5. Hiển thị giá trị cột đơn của truy vấn mysqli