Delimiter //
CREATE Procedure SearchTest(IN FieldName varchar(30),IN FieldValue varchar(30))
BEGIN
SET @query = CONCAT('select count(*) from Some_table_name where ', FieldName,'=',FieldValue);
PREPARE stmt FROM @query;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END //
Delimiter ;
<小时/>
mysql> call SearchTest('accession_no','L138362194');
ERROR 1054 (42S22): Unknown column 'L138362194' in 'where clause'
最佳答案
您的数据库表没有列L138362194
。
您可以通过添加此类列或选择现有的列来解决此问题。
关于mysql - 动态 MySQL 过程不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18956650/