Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


LÖST! Tack alla!Hjälp!! varför blir resultatet null??

Postades av 2002-02-04 18:40:42 - Rickard Andersson, i forum sql-server/msde, Tråden har 8 Kommentarer och lästs av 928 personer

Utan @fromdate < @todaydate visar den en rad.
fältet fromdate är ursprungligen integer och i formatet 20010101
med FrDt < '20020205' går det bra...
Det måste vara nåt konverteringsknas men jag tycker jag garderat mej järnet nu.. Har också testat att putta in dom som integer båda två.

eftersom jag selectar variablerna på slutet och dom syns utan urval så hamnar det bevisligen värden där...

Hjälp!!

ProdNo kommer igentligen in i proceduren om ni undrar om det fasta värdet..

declare @stdsalesprice float
declare @dstsalesdiscount float
declare @fromdate char(8)
declare @todaydate char(8)
declare @customerprice float
declare @customerdiscount float
declare @customerfixed integer
declare @ProdNo char(10)
declare @productgroup13price float
declare @productgroup13discount float

declare @salesprice float
declare @discount float
select @ProdNo = '11'

--hämta standard pris
select @stdsalesprice = SalePr , @dstsalesdiscount = SaleDcp, @fromdate = convert(char(8),FrDt,12), @todaydate = '20' + convert(char(8),Getdate(),12)
from PrDcMat where
ProdNo= @ProdNo
and (@todaydate > @fromdate)
order by Srt
select @stdsalesprice, @fromdate, @todaydate, @ProdNo


Svara

Sv: Hjälp!! varför blir resultatet null??

Postades av 2002-02-05 10:17:06 - Johan Idstam

@fromdate = convert(char(8),FrDt,12) Detta ger en char(8) med sex tecken i tex '010101'

@todaydate = '20' + convert(char(8),Getdate(),12) Detta ger '20' + char(8) text '20010101'

Sedan är jag lite osäker på hur sql behandlar jämförelser med olika långa char()



/johan/


Svara

Sv: Hjälp!! varför blir resultatet null??

Postades av 2002-02-05 11:02:34 - Rickard Andersson

Japp.. Jag vet. Om FrDt hade varit ett datumfält. Men det är en integer med datat 20010101 i så om jag kör

select @fromdate, @todaydate
så får jag

20010101 20020205 och dom ser ju jäkligt lika ut som fält...

Men så fort jag försöker jämföra parametrarna @fromdate < @todaydate

så går det åt helsike...

Mvh
Rickard


Svara

Sv: Hjälp!! varför blir resultatet null??

Postades av 2002-02-05 11:23:00 - Emma Magnusson

Varför använder du inte SMALLDATETIME eller DATETIME???

/Emma


Svara

Sv: Hjälp!! varför blir resultatet null??

Postades av 2002-02-05 11:26:07 - Rickard Andersson

Det är inte jag som byggt databasen och har 0 möjlighet att ändra layout.. Jag fixar bara till en storedprocedure till en webbshop som ger fel pris när man kör en kampanj.

Mvh


Svara

Sv: Hjälp!! varför blir resultatet null??

Postades av 2002-02-05 12:35:41 - Emma Magnusson

kan du inte konverta inne i sp:n? och behålla strängvärdet i databasen?
Har iofs aldrig testat det själv - men det borde ju inte vara omöjligt,
då spelar det ju ingen roll om du skickar in 6 eller 8 tecken för datum -
den gör själv om det och du kan jämföra så som du har tänkt dig.

Du kan tom ange att inparametern ska vara av typen smalldatetime
och skicka in en sträng med 'datum' (fnuttarna måste finnas runt ett
datum). Sql kommer då att utgå ifrån att du skickat in ett giltigt datum
och kommer att jämföra det.

Vill du kontrollera datumet inne i sp:n kan du alltid ta emot dem som
strängar och skapa temporära variabler och tilldela dem värdena av
strängarna efter de kontroller du vill göra.

/emma


Svara

Sv: Hjälp!! varför blir resultatet null??

Postades av 2002-02-05 18:33:09 - Pontus Wång

cast borde göra konverteringsjobbet bra...


Svara

Sv: Hjälp!! varför blir resultatet null??

Postades av 2002-02-05 18:35:15 - Rickard Andersson

Kom på och provade cast för en stund sen... Samma skit. helt jäkla otroligt vad det var lurigt idag..

Mer tips!

Mvh
Rickard


Svara

Sv: Hjälp!! varför blir resultatet null??

Postades av 2002-02-05 19:10:00 - Rickard Andersson

FIXAT!!!! JIPPI!

Blev lite för lätt men tydligen kan man inte kombinera getdate() funktionen med en where i samma fråga.. Men dagen lär ju inte ändras innan frågan körts färdigt...

Tack snälla alla för tips och förslag!

-Emma, fick inte stil på datetime om jag sköt in tex 20020202 såg värdet en snabbis men sen sa den fieldoverflow eller nåt sånt skumt. Tyvärr kan jag heller inte ändra inparametrarna eftersom den anropas från en dll så det hann jag inte testa..

TACK TACK IGEN!!

RESULTAT:

declare @stdsalesprice float
declare @dstsalesdiscount float
declare @fromdate int
declare @todaydate int
declare @customerprice float
declare @customerdiscount float
declare @customerfixed integer
declare @ProdNo char(10)
declare @productgroup13price float
declare @productgroup13discount float

declare @salesprice float
declare @discount float
select @ProdNo = '11'

select @todaydate= '20' + convert(char(8),getdate(),12)

--hämta standard pris
select @stdsalesprice = SalePr , @dstsalesdiscount = SaleDcp, @fromdate = FrDt
from PrDcMat where
ProdNo= @ProdNo and @todaydate > FrDt


order by Srt
select @stdsalesprice, @fromdate, @todaydate, @ProdNo


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 616
27 953
271 709
5 732
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies