/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Incorrect syntax
Fra : Morten Snedker


Dato : 16-11-05 12:47

Jeg får

"Incorrect syntax near ')' på

SELECT @tFærdigAntal=SUM(FærdigAntal) FROM (SELECT DISTINCT
ProduktionNavn, FærdigAntal FROM vProduktion WHERE @where)


Den er da både fin og ren, og kan blive min bedste ven, som jeg kan få
med ind i himlen...ik'?


/Snedker
---

 
 
Jens Gyldenkærne Cla~ (16-11-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 16-11-05 13:07

Morten Snedker skrev:

> "Incorrect syntax near ')' på
>
> SELECT @tFærdigAntal=SUM(FærdigAntal) FROM (SELECT DISTINCT
> ProduktionNavn, FærdigAntal FROM vProduktion WHERE @where)

MSSQL er ikke glad for at arbejde med variable som en del af sql-
sætningen. Du kan bruge variable som en værdi, men ikke som et led
i sætningen (WHERE foo = @foo er o.k., men WHERE @WHERE er ikke
o.k.)

For at lave et sql-kald med variable led, skal hele skidtet lægges
i en streng der så kan eksekveres:

EXEC 'SELECT ' + @WHAT + ' FROM tabel WHERE ' + @WHERE

- men det giver så problemer hvis man gerne vil trække oplysninger
ud i en variabel igen.

Jeg har ikke nogen god løsning på hånden, men måske kender Peter
Lykkegaard en.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Morten Snedker (16-11-2005)
Kommentar
Fra : Morten Snedker


Dato : 16-11-05 13:41

On Wed, 16 Nov 2005 13:06:54 +0100, Jens Gyldenkærne Clausen
<jens@gyros.invalid> wrote:

>> SELECT @tFærdigAntal=SUM(FærdigAntal) FROM (SELECT DISTINCT
>> ProduktionNavn, FærdigAntal FROM vProduktion WHERE @where)

>For at lave et sql-kald med variable led, skal hele skidtet lægges
>i en streng der så kan eksekveres:
>
>EXEC 'SELECT ' + @WHAT + ' FROM tabel WHERE ' + @WHERE
>
>- men det giver så problemer hvis man gerne vil trække oplysninger
>ud i en variabel igen.

Ja, det er også hvad jeg er nået frem til. Jeg laver i stedet en
cursor på den sidste select, og summerer i gennemløbet.

Tak for tid og input.


mvh /Snedker
---

Morten Snedker (16-11-2005)
Kommentar
Fra : Morten Snedker


Dato : 16-11-05 13:57

On Wed, 16 Nov 2005 13:41:09 +0100, Morten Snedker
<morten.snedker@planprojekt.dk> wrote:


>Ja, det er også hvad jeg er nået frem til. Jeg laver i stedet en
>cursor på den sidste select, og summerer i gennemløbet.

Det er selvfølgelig noget vrøvl. Foreløbig gør jeg ingenting. :-\

Måske bliver http://www.sqlteam.com/item.asp?ItemID=2077 min løsning -
det er bare grimt og uelegant. Men jeg får jo alligevel ingen point
for det kunstneriske...

/Snedker
---

Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408180
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste