Undrar om det är någon som kan hjälpa mig med denna sql -fråga Hej Personligen tycker jag det är bättre att använda stored procedures. PÅ Kan någon hjälpa mig med en sql-fråga???
den ska plocka ut de cyklar som är uthyrda
dtpstardatum är det man väljer uthyrningsdatum och dtpslutdatum är återlämningsdatum
uthyrningsdatum är det lagrade bokningarna idatabasen och samma gäller för aterlamnigdatum
jag vill alltså att fråga ska säga ifrån om det finns en bokning mellan det valda datumen
får det inte att fungera
Är det någon som ser problemet
mvh Mathias
Set rsdb = cn.Execute("SELECT Cykel.Cykel_Id FROM Bokning,Cykel,Bokningsrad WHERE Cykel.Cykel_Sort='" & CmbSort.Text & "'AND Cykel.Cykel_Id = Bokningsrad.Cykel_Id AND Bokning.Boknings_Id = Bokningsrad.Boknings_Id AND NOT Bokning.UthyrningsDatum > '" & DTPStartDatum.Value & "' AND Bokning.AterlamningsDatum > '" & DTPStartDatum.Value & "' AND NOT Bokning.UthyrningsDatum > '" & dtpSlutDatum.Value & "' AND Bokning.AterlamningsDatum > '" & dtpSlutDatum.Value & "' ")Sv: Kan någon hjälpa mig med en sql-fråga???
Som du har skrivet det är det ju hopplöst att analysera
Testa att strukturera ungefär så här.
Sen är det ganska stor hjälp om du talar vilken felkod du fick
Set rsdb = cn.Execute("SELECT Cykel.Cykel_Id FROM Bokning,Cykel,Bokningsrad " & _
"WHERE Cykel.Cykel_Sort ='" & CmbSort.Text & "' _
AND Cykel.Cykel_Id = Bokningsrad.Cykel_Id _
AND Bokning.Boknings_Id = Bokningsrad.Boknings_Id _
AND NOT Bokning.UthyrningsDatum > '" & DTPStartDatum.Value & "' _
AND Bokning.AterlamningsDatum > '" & DTPStartDatum.Value & "' _
AND NOT Bokning.UthyrningsDatum > '" & dtpSlutDatum.Value & "' _
AND Bokning.AterlamningsDatum > '" & dtpSlutDatum.Value & "' ")
mvh
SvenSv: Kan någon hjälpa mig med en sql-fråga???
så sätt kan jag även testa dem i SQL och vet att de garanterat fungerar
innan jag använder dem. Förutom det är det SQL-kod och hör hemma i
SQL. Jag har gjort en lösning som visas nedan. Vet inte om den
fungerar eftersom jag inte vet hur dina tabeller ser ut.
//Emma
<code>
'Från VB
Set rsdb = cn.Execute("spHamtaBokning '" & CmbSort.Text & "', '" & DTPStartDatum.Value & "', '" & dtpSlutDatum.Value & "'"
'för att utföra i SQL Server Query Analyser
EXEC spHamtaBokning 'tandem', '20010101', '20011120';
'och så sp:n
CREATE PROCEDURE spHamtaBokning
(@sort VARCHAR (30),
@fromDat SMALLDATETIME,
@tomDat SMALLDATETIME)
AS
SELECT Cykel_Id FROM Bokning, Cykel
WHERE Cykel_Sort = @sort
AND Cykel.cykel_id = Bokning.cykel_id
AND Bokning.AterlamningsDatum <= @tomDat
AND Bokning.UthyrningsDatum => @fromDat;
</code>