MySQL Stored Procedure not working with multiple parameters

ealexander

I have an mysql stored procedure where with one input, that works great. Now i need two inputs, but its not working and i cant figure out whats wrong.

Here is my store procedure:

CREATE DEFINER=`multilager`@`localhost` PROCEDURE `lagerbeholdning_alle`(IN `bruker_gruppe` INT, IN `bruker_gruppe2` INT)
BEGIN
  SET @sql = NULL;

  SELECT GROUP_CONCAT(DISTINCT
           CONCAT('SUM(CASE WHEN lagerbeholdning.lok_id = ', lagerbeholdning.lok_id,
                  ' THEN antall END) `', lagerbeholdning.lok_id, '`'))
    INTO @sql
    FROM lagerbeholdning
    INNER JOIN lokasjoner ON lagerbeholdning.lok_id = lokasjoner.lok_id
    WHERE bruker_gruppe_ref = bruker_gruppe;

  SET @sql = CONCAT('SELECT produkt_id, prod_navn, kat_navn, size_navn, farge_navn, prod_bilde, ', @sql, ' 
                     FROM lagerbeholdning
                     INNER JOIN produkter ON produkt_id = prod_id
                     INNER JOIN produkt_kategorier on prod_kat_id = kat_id
                     INNER JOIN produkt_sizes on prod_size_id = size_id
                     INNER JOIN produkt_farger on prod_farge_id = farge_id
                     WHERE produkter.prod_bruker_gruppe = bruker_gruppe2
                     GROUP BY produkt_id');

  PREPARE stmt FROM @sql;
  EXECUTE stmt;
  DEALLOCATE PREPARE stmt;
END

If i call the procedure:

CALL lagerbeholdning_alle(3,3)

I get the following error:

Error: Unknown column 'bruker_gruppe2' in 'where clause'

How can i use the bruker_gruppe2 parameter in the last where clause?

Elon Than

CONCAT will treat it as normal text and will pass it to query without replacing with value.

SET @sql = CONCAT('SELECT produkt_id, prod_navn, kat_navn, size_navn, farge_navn, prod_bilde, ', @sql, ' 
       FROM lagerbeholdning
       INNER JOIN produkter ON produkt_id = prod_id
       INNER JOIN produkt_kategorier on prod_kat_id = kat_id
       INNER JOIN produkt_sizes on prod_size_id = size_id
       INNER JOIN produkt_farger on prod_farge_id = farge_id
       WHERE produkter.prod_bruker_gruppe = ', bruker_gruppe2, '
       GROUP BY produkt_id');

Now it should be replaced correctly.

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Stored Procedure in mysql Not working

From Dev

How to Use Multiple Parameters in a MySQL *Prepared* Stored Procedure

From Dev

How to Use Multiple Parameters in a MySQL *Prepared* Stored Procedure

From Dev

Stored procedure that accepts multiple parameters

From Dev

MySQL (Stored) Procedure - parameters and query

From Dev

stored procedure not working php mysql

From Dev

MySQL stored procedure cursor not working

From Dev

Date Parameters passed to stored procedure not working as expected

From Dev

SQL - Creating a stored procedure with multiple optional parameters

From Dev

ArgumentException on Adding multiple Parameters in Stored Procedure

From Dev

Sending multiple parameters to stored procedure with jQuery Ajax

From Dev

MySQL Stored Procedure Cursor based on parameters

From Dev

insert into in stored procedure with parameters MYSQL doesnt work

From Dev

MySql Stored Procedure Parameters - syntax error

From Dev

MySQL Stored Procedure using parameters and query

From Dev

multiple insert query using stored procedure NOT WORKING

From Dev

MySQL IN operator not working in a stored procedure setting

From Dev

VB.NET - Stored procedure runs but parameters aren't working

From Dev

Mysql make a stored procedure from multiple stored procedures

From Dev

Sending parameters to a stored procedure

From Dev

Powershell Stored Procedure with Parameters

From Dev

Stored procedure with default parameters

From Dev

Multiple table type parameters in sql server stored procedure

From Dev

Database.SqlQuery calling stored procedure that has multiple output parameters

From Dev

SQL Server stored procedure - delete rows based on multiple parameters

From Dev

How to pass multiple parameters to stored procedure using pdo in php

From Dev

mysql stored procedure parameters don't seem to work with "@" (At sign)

From Dev

Calling stored procedure in mysql with IN OUT parameters which returns result of insertion

From Dev

Stored Procedure for update not working

Related Related

  1. 1

    Stored Procedure in mysql Not working

  2. 2

    How to Use Multiple Parameters in a MySQL *Prepared* Stored Procedure

  3. 3

    How to Use Multiple Parameters in a MySQL *Prepared* Stored Procedure

  4. 4

    Stored procedure that accepts multiple parameters

  5. 5

    MySQL (Stored) Procedure - parameters and query

  6. 6

    stored procedure not working php mysql

  7. 7

    MySQL stored procedure cursor not working

  8. 8

    Date Parameters passed to stored procedure not working as expected

  9. 9

    SQL - Creating a stored procedure with multiple optional parameters

  10. 10

    ArgumentException on Adding multiple Parameters in Stored Procedure

  11. 11

    Sending multiple parameters to stored procedure with jQuery Ajax

  12. 12

    MySQL Stored Procedure Cursor based on parameters

  13. 13

    insert into in stored procedure with parameters MYSQL doesnt work

  14. 14

    MySql Stored Procedure Parameters - syntax error

  15. 15

    MySQL Stored Procedure using parameters and query

  16. 16

    multiple insert query using stored procedure NOT WORKING

  17. 17

    MySQL IN operator not working in a stored procedure setting

  18. 18

    VB.NET - Stored procedure runs but parameters aren't working

  19. 19

    Mysql make a stored procedure from multiple stored procedures

  20. 20

    Sending parameters to a stored procedure

  21. 21

    Powershell Stored Procedure with Parameters

  22. 22

    Stored procedure with default parameters

  23. 23

    Multiple table type parameters in sql server stored procedure

  24. 24

    Database.SqlQuery calling stored procedure that has multiple output parameters

  25. 25

    SQL Server stored procedure - delete rows based on multiple parameters

  26. 26

    How to pass multiple parameters to stored procedure using pdo in php

  27. 27

    mysql stored procedure parameters don't seem to work with "@" (At sign)

  28. 28

    Calling stored procedure in mysql with IN OUT parameters which returns result of insertion

  29. 29

    Stored Procedure for update not working

HotTag

Archive