Mysql
 sql >> база данни >  >> RDS >> Mysql

Неизвестна колона „x“ в „клауза where“

Въпреки че посочих каква може да е грешката във вашия sql код, бих искал да дам повече подробности за нея.

That Stored Procedure Runing at MySql WithOut any problems but when send Delphi parameters to sp , i get that Error !! Но грешите.

Има a known bug в създаването на вашата процедура. Поради причината беше повдигнато изключение по време на изпълнение .
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.

Пример за стандартен тест е както е показано по-долу:

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)

Тук можете да разберете, че компилирането на процедура е игнорирано в кой current day е.

mysql> delimiter ;
mysql> call proc_test();
ERROR 1054 (42S22): Unknown column 'current_day' in 'field list'
mysql>

С това трябва да разберете, че That Stored Procedure Runing at MySql WithOut any problems ... не е правилно.

Бърза корекция на вашето запитване ще разреши проблема. Споменахте, че I defined input parameters with _ prefix. I don't know waht i must do ! . Ако това е вярно, тогава
променете

SELECT * FROM bimar WHERE `_code_ehda_konandeh` = `code_ehda_konandeh`

до

SELECT * FROM bimar WHERE `code_ehda_konandeh` = _code_ehda_konandeh

и трябва да работи. Тук предположих code_ehda_konandeh е колона от таблица bimar също.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Получаване на данни за реда на вмъкнатия ред (Mysql, PHP, mysqli)

  2. mysql таблица за присъединяване към себе си

  3. Пълнотекстово търсене с InnoDB в MySQL

  4. Няма следващ набор от резултати. Моля, извикайте mysqli_more_results()/mysqli::more_results(), за да проверите дали да извикате тази функция/метод

  5. Рекурсивно включва Sequelize?