Avatar billede ioni Nybegynder
20. august 2005 - 19:41 Der er 8 kommentarer og
1 løsning

SQL Sætning i ASP

Hej
Jeg har nogle data i access jeg skal trække ud fra en kalender og vise. Jeg skal vise de 7 kommende arrangementer.

Hvordan skal jeg skrive min SQL? Hvordan laver jeg det så de 7 kommende arrangementer beregnes udfra dagens dato?

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("database/database.mdb")
strSQL = "select TOP 7 from kalender order by datovis"
set rs = Conn.execute(strSQL)
Avatar billede softspot Forsker
20. august 2005 - 19:45 #1
select TOP 7 from kalender order by format(datovis, "yyyy-mm-dd") desc
Avatar billede ioni Nybegynder
20. august 2005 - 19:49 #2
Så får jeg nedenstående:

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

[Microsoft][ODBC Microsoft Access Driver] The SELECT statement includes a reserved word or an argument name that is misspelled or missing, or the punctuation is incorrect
Avatar billede arne_v Ekspert
20. august 2005 - 19:50 #3
umiddelbart ville jeg tro:

SELECT TOP 7 *
FROM kalender
WHERE datovis > NOW()
ORDER BY datovis
Avatar billede softspot Forsker
20. august 2005 - 19:54 #4
nu antog jeg at dotavis var navnet på det felt der indeholder datoen, men det lyder som om der er felter som ikke eksisterer (med mindre arne's asterisk løser problemet :)). Jeg vil tillade mig at tage udgangspunkt i arne's SQL og ændre den til:

SELECT TOP 7 *
FROM kalender
WHERE datovis > NOW()
ORDER BY format(datovis, "yyyymmdd") desc

så burde de nyeste arrangementer komme først...
Avatar billede ioni Nybegynder
20. august 2005 - 19:54 #5
Arne V -> det ser ud til at virke. Lav et svar så du kan få nogle points
Avatar billede arne_v Ekspert
20. august 2005 - 19:56 #6
svar
Avatar billede arne_v Ekspert
20. august 2005 - 19:58 #7
*
er så vidt jeg ved nødvendig

TOP 7
WHERE datovis > NOW()
ORDER BY datovis
er nødvendig for at finde de 7 kommende - jeg mener ikke at det virker med DESC
fordi så finder man de 7 længst ude i fremtiden

ORDER BY datovis
og
ORDER BY format(datovis, "yyyymmdd")
burde give samme rækkefølge
Avatar billede softspot Forsker
20. august 2005 - 20:01 #8
Hmmm... det har du egentlig ret i...
Avatar billede ioni Nybegynder
20. august 2005 - 20:22 #9
Takker for jeres input og hjælp:-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester