Mặc dù tôi đã chỉ ra lỗi có thể là gì trong mã sql của bạn, nhưng tôi muốn cung cấp thêm chi tiết về nó.
That Stored Procedure Runing at MySql WithOut any problems but when send Delphi parameters to sp , i get that Error !!
Nhưng bạn đã nhầm.
Có a known bug
trong quá trình tạo thủ tục của bạn. Vì lý do mà một ngoại lệ thời gian chạy đã được đưa ra .
Semantics of Stored procedure code is not checked at CREATE time. At runtime, undeclared variables are detected, and an error message is generated for each reference to an undeclared variable. However, SP's seem to believe any reference denotes a column, even though the syntactic context excludes that. This leads to a very confusing error message in case the procedure.
Một ví dụ kiểm tra tiêu chuẩn như được hiển thị bên dưới:
mysql> drop procedure proc_test;
Query OK, 0 rows affected (0.00 sec)
mysql> delimiter //
mysql> CREATE PROCEDURE proc_test()
-> BEGIN
-> select current_day;
-> END
-> //
Query OK, 0 rows affected (0.00 sec)
Ở đây bạn có thể hiểu rằng quá trình biên dịch thủ tục bị bỏ qua vào current day
gì là.
mysql> delimiter ;
mysql> call proc_test();
ERROR 1054 (42S22): Unknown column 'current_day' in 'field list'
mysql>
Với điều này, bạn nên hiểu rằng That Stored Procedure Runing at MySql WithOut any problems ...
không đúng.
Một bản sửa lỗi nhanh chóng cho truy vấn của bạn sẽ giải quyết được sự cố. Bạn đã đề cập rằng I defined input parameters with _ prefix. I don't know waht i must do !
. Nếu điều đó là đúng, thì
thay đổi
SELECT * FROM bimar WHERE `_code_ehda_konandeh` = `code_ehda_konandeh`
đến
SELECT * FROM bimar WHERE `code_ehda_konandeh` = _code_ehda_konandeh
và nó sẽ hoạt động. Ở đây tôi giả định là code_ehda_konandeh
là một cột của bảng bimar
quá.