webForumDet fria alternativet

SQL-frågor...

33 svar · 410 visningar · startad av Method · sida 2 av 2

MethodMedlem sedan apr. 2001357 inlägg
#21

Nu har jag testat lite mer och man kan söka fritt mellan olika alternativ förutom när man blandar in serchdate och age.

När man har med searchdate så "förstör" den de andra sökalternativen för väljer man ett alternativ ur |jobb|, |utbildning|, |kontor| så visar den ändå alla inlägg och kollar jag på vad SQL-frågan så blir den så här

select * from ansokan True order by Efternamn

och jag använder mig av denna

if SearchDate <> "" then
if where = "" then
where = " where "
else
where = where & " and " 
end if
where = WHERE & datum >=" & dateadd(""d""," & request.form("searchDate") & ", date()) & "
end if

sen har jag problem med age koden och den ser ut så här

if age <> "" then
if where = "" then
where = " where "
else
where = where & " and "
end if
where = where & "datediff(""yyyy"",fod_datum,date) between " & request.form("age")'"
end if

SQL-frågan ser ut så här

select * from ansokan where datediff("yyyy",fod_datum,date) between 20 and 25 order by Efternamn

Snälla snälla hjälp det e ju så nära att det funkar nu :)

Sen vill jag tacka LarsG för bra tålamod ;)

------------------
--------------
STARZINGER
Tackar & Bockar forumet rockar!
Med ett hugg faller inget träd

[Redigerat av Method den 06 sep 2001]

LarsGMedlem sedan dec. 200012 464 inlägg
#22

Det saknas ett " precis framför datum

if SearchDate <> "" then
if where = "" then
where = " where "
else
where = where & " and " 
end if
where = WHERE & "datum >=" & dateadd(""d""," & request.form("searchDate") & ", date()) & "
end if

age-koden tycker jag ser helt korrekt ut. Vad händer om du kör den select-satsten direkt i Access?

------------------
essentitia preter non sans multiplicandum

[Redigerat av LarsG den 06 sep 2001]

MethodMedlem sedan apr. 2001357 inlägg
#23

jag prova search koden nu och fick detta felet

Microsoft VBScript compilation error '800a03ee' 

Expected ')' 

/int/test.asp, line 69 

where = WHERE & "datum >=" & dateadd(""d""," & request.form("searchDate") & ", date()) & "
---------------------------------------^

hur kör man en select-sats direkt i Access?

------------------
--------------
STARZINGER
Tackar & Bockar forumet rockar!
Med ett hugg faller inget träd

[Redigerat av Method den 06 sep 2001]

LarsGMedlem sedan dec. 200012 464 inlägg
#24

hur kör man en select-sats direkt i Access?

Vet inte exakt, (har aldrig använt Access) men det borde finnas något fönster under någon meny.

Ytterligare ett försök

where = WHERE & _
"datum >= dateadd(""d""," & _
request.form("searchDate") & _
", date()) "

------------------
essentitia preter non sans multiplicandum

jorgenMedlem sedan feb. 20012 412 inlägg
#25

Hej!

hur kör man en select-sats direkt i Access?

  1. öppna avsedd databas (markera en tabell, öppna ej)
  2. välj frågor under object i menyn till vänster.
  3. välj - skapa fråga i designläge
  4. stäng de popup fönser som dyker upp
  5. välj SQL uppe till vänster
  6. skriv din fråga i textarean
  7. Klicka på kör (rött utropstecken) när du är nöjd.

lycka till!

Jörgen

------------------
"Ett väl utfört arbete ger en inre tillfredsställelse och är den grund varpå samhället vilar."

MethodMedlem sedan apr. 2001357 inlägg
#26

Den koden jag fick funkar inte får denna fel

sql:
select * from ansokan where datum <= dateadd("d",-2, date()) order by Efternamn

Microsoft OLE DB Provider for ODBC Drivers error '80040e10' 

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1. 

/int/test.asp, line 80

jag använder mig av denna kod på ett annan sida men när jag försöker lägga in # så slutar koden att fungera.

SQL = "SELECT * From jobb WHERE datum >=#" & dateadd("d", -5, date())& "# ORDER BY ID DESC"

Hur skall jag utforma denna SQL i Access för att kunna prova den?

where = where & "datediff(""yyyy"",fod_datum,date) between " & request.form("age")'"

Tack på förhand

Jonas

------------------
--------------
STARZINGER
Tackar & Bockar forumet rockar!
Med ett hugg faller inget träd

[Redigerat av Method den 07 sep 2001]

MethodMedlem sedan apr. 2001357 inlägg
#27

Nu har jag fått fram en kod som hämtar inlägg efter ett visst datum

where = where & "[datum] >=#" & dateadd("d", -10, date()) & "# "

men i stället för -10 vill jag att den hämtar det från dropdownmenyn men när jag lägger in denna

" & Request.Form("searchDate") & "

istället för -10 så får jag bara fel hela tiden.

Hur ska jag göra för att få det att funka?

Kan nån hjälpa mig med detta?

------------------
--------------
STARZINGER
Tackar & Bockar forumet rockar!
Med ett hugg faller inget träd

@ndersMedlem sedan juni 200032 969 inlägg
#28

men hur ser sql-frågan ut när det blir fel? det är ju det som är intressant.

------------------
mördar-anders, det är jag.

MethodMedlem sedan apr. 2001357 inlägg
#29

så här

Microsoft VBScript compilation error '800a03ee' 

Expected ')' 

/int/ansokningar.asp, line 104 

where = where & "[datum] >=#" & dateadd("d", " & Request.Form("searchDate") & ", date()) & "# "
---------------------------------------------------------------^

(jag har märkt att ----------^ kan peka fel den pekar på s i ("searchDate")

------------------
--------------
STARZINGER
Tackar & Bockar forumet rockar!
Med ett hugg faller inget träd

@ndersMedlem sedan juni 200032 969 inlägg
#30
where = where & "[datum] >=#" & dateadd("d", cdate(Request.Form("searchDate")) , date()) & "# "

mvh,

------------------
mördar-anders, det är jag.

MethodMedlem sedan apr. 2001357 inlägg
#31

JAJAJAJAJAJAA det funkar göttt tack :) :)

Nu e det bara den

where = where & "datediff(""yyyy"",fod_datum,date) between " & request.form("age")'"

som inte funkar

varför?

fel

sql:
SELECT id, fornamn, efternamn, telefon, mobil, [datum], sokvag, httpsokvag, jobb,kontor, fod_datum, utbildning FROM ansokan where datediff("yyyy",fod_datum,date) between 26 and 30 ORDER BY [datum] DESC

Microsoft JET Database Engine error '80040e10' 

No value given for one or more required parameters. 

/int/ansokningar.asp, line 122

i databasen heter raden |fod_datum|
typ: Datum/tid
där användaren sparar födelsedatum i formatet MM/DD/YYYY

Tack på förhand

Jonas

------------------
--------------
STARZINGER
Tackar & Bockar forumet rockar!
Med ett hugg faller inget träd

MethodMedlem sedan apr. 2001357 inlägg
#32

jag fick igång det sista

Tack för all hjälp allesammans :) :) :)

häls.
Jonas

------------------
--------------
STARZINGER
Tackar & Bockar forumet rockar!
Med ett hugg faller inget träd

LarsGMedlem sedan dec. 200012 464 inlägg
#33

Så bra, vad var det sista för fel?

------------------
essentitia preter non sans multiplicandum

MethodMedlem sedan apr. 2001357 inlägg
#34

så här ser den slutgiltiga koden ut

m_strSQL = "SELECT id, fornamn, efternamn, telefon, mobil, [datum], sokvag, httpsokvag, jobb,kontor, fod_datum, utbildning  " & _
							"FROM ansokan "
							where = ""
							if jobb <> "" then
							if where = "" then
							where = " where "
							else
							where = where & " and "
							end if
							where = where & " jobb = '" & jobb & "'"
							end if

							if kontor <> "" then
							if where = "" then
							where = " where "
							else
							where = where & " and "
							end if
							where = where & " kontor = '" & kontor & "'"
							end if

							if age <> "" then
							if where = "" then
							where = " where "
							else
							where = where & " and "
							end if
							where = where & "datediff(""yyyy"",fod_datum,date()) between " & request.form("age")'"
							end if

							if utb <> "" then
							if where = "" then
							where = " where "
							else
							where = where & " and "
							end if
							where = where & " utbildning = '" & utb & "'"
							end if

							if SearchDate <> "" then
							if where = "" then
							where = " where "
							else
							where = where & " and " 
							end if
							where = where & "[datum] >=#" & dateadd("d", cdate(Request.Form("searchDate")) , date()) & "# "
							end if

							m_strSQL = m_strSQL & where & " ORDER BY [datum] DESC"

så här såg |age| ut innan

where = where & "datediff(""yyyy"",fod_datum,date) between " & request.form("age")'"

------------------
--------------
STARZINGER
Tackar & Bockar forumet rockar!
Med ett hugg faller inget träd

[Redigerat av Method den 07 sep 2001]

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)