sql >> Databasteknik >  >> RDS >> Mysql

Är det möjligt att skicka en variabel till ett lagrat proceduranrop i mysql?

    delimiter $$
    create procedure sp_test
    (
    ulon int(4)
    )
    BEGIN
        DECLARE bid int(11);
        set bid=8888;
...
...
...
...
        set @sql=concat('call sp_nextproc_',bid,'(?,?)');
        prepare stmt from @sql;
        set @var1=bid;
        set @var2=ulon;
        EXECUTE stmt using @var1,@var2;
    END
    $$
    -- ------------
    delimiter $$
    CREATE PROCEDURE `sp_nextproc_8888`(
    IN bid int(11),
    IN ulon int(4)
    )
    BEGIN
        select bid,ulon;
    END
    $$
-- test with these:
-- call sp_test(9999);
-- call sp_nextproc_8888(111,222);



  1. CURRENT_DATE Funktion i Oracle

  2. Skapa en Oracle Database 12c – Steg för steg

  3. Hur man får förra veckans data i MySQL

  4. Hur ansluter man till flera databaser på en enda PHP-sida?