Når du skal benytte dig af dynamic sql statements er det vigtigt at du laver al koden dynamic. Og det er pga. det variabelscope der findes i dynamic ctr. normal sql!
Så rent teknisk smider du bare også din declaration og cursor ind i @SQLDynamic, ala:
SET @SQLDynamic = 'SELECT * FROM tblItems' SET @SQLDynamic = @SQLDynamic + 'DECLARE Items CURSOR LOCAL ' SET @SQLDynamic = @SQLDynamic + 'FOR @SQLdynamic ' SET @SQLDynamic = @SQLDynamic + 'OPEN Items ' osv. med resten af koden !!
Jeg kan desværre ikke sætte den ind i en større forbindelse, da du ikke har fortalt hvori det variable ligger :O)
btw. jeg kommer lige i tanke om at når jeg laver lidt komplekse dynamiske sql, så istedet for at kalde EXEC til sidst, kalder jeg PRINT, det er en god måde at lave lidt simpel debugging på.
det lyder meget "handy". Nu kom jeg godt nok til at give eksemplet med, at jeg ønskede en SP executed. Men det var nu alm SQL kode jeg skulle have hjælp med.
Jeg har nemlig haft lidt problemer med " ' "'erne, når jeg skulle lave dynamisk SQL inde i noget andet dynamisk SQL.
okay! Jeg vil stadig sige at du skal bruge print, for at se hvori dine fejl ligger. Ellers må du poste noget hvori der ligger en fejl med pinger, så hjælper jeg på den :O)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.