[SQL 2000] Stored Procedure / variable column name (datum)

Pagina: 1
Acties:

  • MrCaBLeGuY
  • Registratie: Februari 2002
  • Niet online

MrCaBLeGuY

powered by yellow bird

Topicstarter
Ik zit met de volgende stored procedure:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
CREATE PROCEDURE [PCSNELSTATS].[updateUrlDef] 

@referer varchar(750),
@column varchar(50)

AS

update httpreferer_url
        
SET @column = @column +1

where referer_url = '@referer'
GO


Die column naam moet dus variabel kunnen zijn, iedere dag, week, maand afhankelijk van de datum. Bovenstaande gaat niet werken, iemand die hier een oplossing voor heeft? Kan voldoende vinden over variable column names maar niks voor het bovenstaande.

  • Orphix
  • Registratie: Februari 2000
  • Niet online
Een query opbouwen en vervolgens uitvoeren mbv sp_executesql.
Zoiets:
code:
1
2
3
4
5
6
7
8
9
10
11
SET @CMD = 
'UPDATE
    httpreferer_url        
SET
    '+@column+' = @column +1
WHERE
    referer_url = @referer' 

EXEC sp_executesql @CMD,
        N'@referer varchar(750),@column varchar(50) ',
        @referer, @column

  • whoami
  • Registratie: December 2000
  • Laatst online: 16:29
Echt performant is dat niet.
Waarom doe je het dan niet via een gewone (parametrized) query die je opbouwt ?

https://fgheysels.github.io/


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Naast de bezwaren die whoami noemt gaat dit sowieso niet werken,je probeert nu een record te updaten die als als referer de tekst @referer heeft, en niet de variabele @referer.

Oops! Google Chrome could not find www.rijks%20museum.nl