webForumDet fria alternativet

databas kopplings problem

ASPur ASP

13 svar · 686 visningar · startad av firstchoice

Medlem sedan okt. 2001615 inlägg
Frågan#1

vad är fel?


set rsTitle = Server.CreateObject("ADODB.RecordSet")
rsTitle.CursorLocation = 3
sql = "SELECT t.*, (SELECT COUNT(*) FROM tblNote n WHERE t.TitleId = n.TitleId) AS TitleNoteCount, (SELECT MAX(n.NoteCreationDate) FROM tblNote n WHERE t.TitleId = n.TitleId) AS NoteDate FROM tblTitle t"

If lTitleId <> -1 Then
  sql = sql & " WHERE t.TitleId = " & lTitleId
Else
  sql = sql & " ORDER BY t.Titleid"
End If
    
rsTitle.Open sql, dbconn, 3, 1
rsTitle.ActiveConnection = Nothing
set dbconn = nothing

fel meddeladet:

Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
/test/Default.asp, line 42

Medlem sedan okt. 2001615 inlägg
#2

glömde säga att "line 42" är

rsTitle.Open sql, dbconn, 3, 1
Medlem sedan aug. 20013 824 inlägg
#3

Detta borde nog funka:

set rsTitle = Server.CreateObject("ADODB.RecordSet")
rsTitle.CursorLocation = 3
sql = "SELECT t.*, (SELECT COUNT(*) FROM tblNote n WHERE t.TitleId = n.TitleId) AS TitleNoteCount, (SELECT MAX(n.NoteCreationDate) FROM tblNote n WHERE t.TitleId = n.TitleId) AS NoteDate FROM tblTitle t"

If lTitleId <> -1 Then
  sql = sql & " WHERE t.TitleId = "& lTitleId
Else
  sql = sql & " ORDER BY t.Titleid"
End If
    
rsTitle.Open sql, dbconn, 3, 1
rsTitle.ActiveConnection = Nothing
set dbconn = nothing

/ Mikul

Medlem sedan sep. 20025 506 inlägg
#4

OT:
Det heter "Databaskopplingsproblem", är det så svårt? *Vill ha en uppgiven smilie*

Medlem sedan apr. 20021 203 inlägg
#5

:x

Medlem sedan dec. 200012 464 inlägg
#6

Felet beror oftast på att det är något kolumnnamn/tabellnamn som inte stämmer.

Medlem sedan okt. 2001615 inlägg
#7

det fungerar fortfarande inte...samma fel!

Medlem sedan juni 200032 967 inlägg
#8

Du har kontrollerat, som LarsG föreslår, att tabell- och fältnamn är stavade på samma sätt i SQL-frågan som i tabelldefinitionerna?

Medlem sedan okt. 2001615 inlägg
#9

sql frågan funkar bra, när jag kör den mot MS SQL 7, men inte mot ACCESS...kan det vara en begränsning i access?

Medlem sedan juni 200032 967 inlägg
#10

Njae, den bör fungera i Access också, under förutsättning att, ja, just det. ;)

Mvh,

Medlem sedan sep. 2002366 inlägg
#11

Vad jag har för mig så klarar inte Access av COUNT

-Eitraz

Medlem sedan juni 200032 967 inlägg
#12

Eitraz skrev:

Vad jag har för mig så klarar inte Access av COUNT

Då har du fel för dig. :)

Mvh,

Medlem sedan okt. 2001615 inlägg
#13

hjälp!!! det funkar ju fortfarande inte!!

Medlem sedan dec. 20003 887 inlägg
#14

Något strular väl till sig då du har flera SELECT-satser. Jag har inga direkt lyckade lösningar med SELECT-blandningar och Access. Jag brukar istället försöka lösa liknande problem med lösa ut varje SELECT-sats och loopa igenom dessa inifrån och ut tills jag får fram det jag vill ha, men jag blir lite osäker på om detta skulle hjälpa dig i det här fallet :l

Det kanske är så att Access tappar bort tabellaliaset n? Testa använda dig av tblNote.TableId och tblNote.NoteCreationDate istället.

Access kan vara sååå irriterande ibland, så det kanske bara är så att det är Access som jäklas med dig ;)

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