Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [Mysql] Passare LIMIT come parametro a una stored procedure

    ciao!

    avrei bisogno di passare il LIMIT a una query in una stored procedure.
    ho provato così, ma mi da errore in fase di creazione:
    codice:
    BEGIN
        DECLARE limVal INT;
            SET limVal = lim;
        SELECT * FROM cr_tesord_clienti
            WHERE fk_cliente = id_cliente AND tesord_inviato = inviato
            ORDER BY tesord_id DESC
            LIMIT limVal;
    END
    dove lim è il nome del parametro e l'ho settato come INT.
    avete un suggerimento in merito??

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Genova, presenza costante a Milano
    Messaggi
    100
    Sì, usa una variabile di sessione. Per esempio @lim.

  3. #3
    ciao!
    facendo così, ottengo cmq errore in fase di creazione:
    codice:
    BEGIN
        DECLARE @limVal INT;
            SET limVal = lim;
    
        SELECT * FROM cr_tesord_clienti
            WHERE fk_cliente = id_cliente AND tesord_inviato = inviato
            ORDER BY tesord_id DESC
            LIMIT limVal;
    END

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2014
    residenza
    Genova, presenza costante a Milano
    Messaggi
    100
    No scusami in realtà non puoi usare neanche una variabile di sessione. Puoi usare però un prepared statement:

    http://stackoverflow.com/questions/1...ored-procedure

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.