Hướng dẫn call procedure in procedure mysql - thủ tục gọi trong thủ tục mysql
Tôi không thể tìm thấy câu trả lời này ở bất cứ đâu, nhưng bạn có thể gọi một quy trình được lưu trữ từ một quy trình được lưu trữ khác trong MySQL không? Tôi muốn lấy lại giá trị nhận dạng và sử dụng nó trong quy trình lưu trữ của cha mẹ. Chúng tôi không thể sử dụng các chức năng nữa! Show Đã hỏi ngày 12 tháng 6 năm 2012 lúc 16:27Jun 12, 2012 at 16:27
Mike Flynnmike FlynnMike Flynn 22K51 Huy hiệu vàng176 Huy hiệu bạc330 Huy hiệu Đồng51 gold badges176 silver badges330 bronze badges
Các tham số Đã trả lời ngày 12 tháng 6 năm 2012 lúc 16:34Jun 12, 2012 at 16:34
Ahamed mustafa mahamed mustafa mAhamed Mustafa M 3.0391 Huy hiệu vàng22 Huy hiệu bạc33 Huy hiệu đồng1 gold badge22 silver badges33 bronze badges 5 Để gọi một thủ tục khác, hãy sử dụng cuộc gọi: Ex: Để có được danh tính, bạn đã thử kiểm tra last_insert_id (); Bạn sẽ làm một cái gì đó như Đây là một ví dụ hoàn chỉnh, được thử nghiệm:
Đã trả lời ngày 12 tháng 6 năm 2012 lúc 16:31Jun 12, 2012 at 16:31
4 13.2.1 & NBSP; Câu lệnh gọi
Tuyên bố 0.Các thủ tục được lưu trữ không có đối số nào có thể được gọi mà không có dấu ngoặc đơn. Đó là, 1 và 2 là tương đương. 5 tham số. Khi thủ tục trả về, một chương trình máy khách cũng có thể thu được số lượng hàng bị ảnh hưởng cho câu lệnh cuối cùng được thực thi trong thói quen: ở cấp SQL, hãy gọi hàm 6; Từ API C, hãy gọi hàm 7.Để biết thông tin về ảnh hưởng của các điều kiện chưa được xử lý đối với các tham số thủ tục, xem Phần & NBSP; 13.6.7.8, Xử lý điều kiện và ra các tham số hoặc ra các tham số. Để lấy lại giá trị từ một thủ tục bằng tham số 5, hãy truyền tham số bằng biến người dùng, sau đó kiểm tra giá trị của biến sau khi thủ tục trả về. . Quy trình sau đây có tham số OUT mà quy trình đặt thành phiên bản máy chủ hiện tại và giá trị 5 mà quy trình tăng lên từ giá trị hiện tại của nó:
Trước khi gọi quy trình, khởi tạo biến sẽ được truyền dưới dạng tham số 5. Sau khi gọi thủ tục, bạn có thể thấy rằng các giá trị của hai biến được đặt hoặc sửa đổi:
Trong các câu lệnh 7 và 8, các giữ chỗ có thể được sử dụng cho các tham số 0, OUT và 5 tham số. Các loại tham số này có thể được sử dụng như sau:
Để viết các chương trình C sử dụng câu lệnh 3 phải được bật. Điều này là do mỗi CALL trả về kết quả để chỉ ra trạng thái cuộc gọi, ngoài bất kỳ bộ kết quả nào có thể được trả về bởi các câu lệnh được thực thi trong quy trình. 3 cũng phải được bật nếu CALL được sử dụng để thực hiện bất kỳ quy trình được lưu trữ nào có chứa các câu lệnh đã chuẩn bị. Không thể xác định được khi một thủ tục như vậy được tải cho dù các câu lệnh đó tạo ra các bộ kết quả, vì vậy cần phải cho rằng họ làm như vậy.
3 có thể được bật khi bạn gọi 8, rõ ràng bằng cách vượt qua cờ 3 hoặc hoàn toàn bằng cách vượt qua 0 (cũng cho phép 3). 3 được bật theo mặc định. Để xử lý kết quả của câu lệnh 4 hoặc 5, hãy sử dụng một vòng lặp gọi 6 để xác định xem có nhiều kết quả hơn không. Ví dụ, xem hỗ trợ thực thi nhiều câu lệnh. Các chương trình C có thể sử dụng giao diện đã chuẩn bị để thực hiện các câu lệnh 5. Điều này được thực hiện bằng cách xử lý kết quả của câu lệnh CALL bằng cách sử dụng vòng lặp gọi 1 để xác định xem có nhiều kết quả hơn không. Ví dụ, xem hỗ trợ câu lệnh gọi đã chuẩn bị. Các ngôn ngữ cung cấp giao diện MySQL có thể sử dụng các câu lệnh CALL để truy xuất trực tiếp các tham số thủ tục OUT và 5.Các thay đổi siêu dữ liệu đối với các đối tượng được đề cập bởi các chương trình được lưu trữ được phát hiện và gây ra tự động lặp lại các câu lệnh bị ảnh hưởng khi chương trình được thực hiện tiếp theo. Để biết thêm thông tin, hãy xem Phần & NBSP; 8.10.3, Bộ nhớ đệm của các câu lệnh đã chuẩn bị và các chương trình được lưu trữ. Chúng ta có thể gọi thủ tục trong quy trình trong MySQL không?Hoàn toàn có khả năng một quy trình lưu trữ MySQL có thể gọi một quy trình lưu trữ MySQL khác bên trong nó. Để chứng minh điều đó, chúng tôi đang lấy một ví dụ trong đó một quy trình được lưu trữ sẽ gọi một quy trình được lưu trữ khác để tìm ra Last_insert_id.. To demonstrate it, we are taking an example in which a stored procedure will call another stored procedure to find out the last_insert_id.
Làm thế nào để bạn gọi một thủ tục trong một thủ tục?Dưới đây là một ví dụ về cách gọi một thủ tục được lưu trữ bên trong một quy trình được lưu trữ khác.Điều này còn được gọi là các quy trình lưu trữ lồng nhau trong SQL Server.Bước 1: Tạo hai quy trình được lưu trữ đơn giản để chèn một số dữ liệu vào hai bảng khác nhau. Both chấp nhận bốn tham số để chèn dữ liệu.Create two simple stored procedure to insert some data into two different tables. both accept four parameters to insert the data.
Chúng ta có thể gọi thủ tục trong quy trình trong SQL không?Bạn có thể gọi thủ tục được lưu trữ bên trong một quy trình được lưu trữ khác;JavaScript trong quy trình được lưu trữ bên ngoài có thể lấy và lưu trữ đầu ra của quy trình được lưu trữ bên trong.; the JavaScript in the outer stored procedure can retrieve and store the output of the inner stored procedure.
Chúng ta có thể gọi thủ tục từ một thủ tục khác không?Trong các ứng dụng cơ sở dữ liệu lớn, người ta thường gọi một quy trình được lưu trữ từ một quy trình được lưu trữ khác.Trong blog này, tôi sẽ giải thích cách thực hiện một quy trình được lưu trữ trong một quy trình được lưu trữ khác trong SQL Server.Hãy bắt đầu với việc tạo ra một thủ tục được lưu trữ.Đây là truy vấn để tạo quy trình đầu tiên của chúng tôi:.it is common to call one stored procedure from another stored procedure. In this blog, I will explain how to execute a stored procedure within another stored procedure in SQL Server. Let's start with creating a stored procedure. Here's the query for creating our first procedure:. |