webForum webForum sponsras med lina och serverplats av Binero AB

Gå tillbaka   webForum > Utveckling > Webbutveckling > ASP

ASP Diskussioner om Active Server Pages, med relaterade scriptspråk (klassisk asp).

Svar
 
Trådverktyg Visningsalternativ
Äldre 2002-10-24, 16:59   #1
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
Kopplingsuttrycket stöds inte

Använder en Access DB och följande SQL-sats:
Kod:
	SQL = "Select Options_ID, Options_Name, Count(Relations.Rel_ID) As Antal From Options Left Outer Join Relations On Options_ID=Relations.OptionID Where Options_Active=1 Group By Relations.OptionID"
Får felet:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Drivrutin för ODBC Microsoft Access] Kopplingsuttrycket stöds inte.

Är inte så van vid Access Vad gör jag fel?
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 17:12   #2
LarsG
Medlem
Årets medlem 2001
 
Registrerad: 2000-12-03
Ort: Uppsala
Inlägg: 12 465
Lösningar: 958
leende

Det är inget syntaktiskt fel i frågan.
Stämmer alla kolumnnamn?
__________________
essentitia preter non sans multiplicandum
LarsG besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 17:33   #3
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
Japp det gör dom
Kan det ha med kopplingen att göra?
Kod:
dbPath = "driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath("newsletter.mdb")
	'Lets open the DB
	Set Conn = Server.CreateObject("ADODB.Connection")
	Conn.Open dbPath
	
	'Lets get all the options and put them in a array
	SQL = "Select Options_ID, Options_Name, Count(Relations.Rel_ID) As Antal From Options Left Outer Join Relations On Options_ID=Relations.OptionID Where Options_Active=1 Group By Relations.OptionID"
	Set RS = Conn.Execute(SQL)
		If Not RS.EOF Then
			GetOptions = RS.GetRows()
		Else
			GetOptions = Null
		End If
	RS.Close
	Set RS = Nothing
	Conn.Close
	Set Conn = Nothing
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 17:52   #4
LarsG
Medlem
Årets medlem 2001
 
Registrerad: 2000-12-03
Ort: Uppsala
Inlägg: 12 465
Lösningar: 958
leende

Det tror jag inte. Ett problem som jag ser är att du har för få och fel kolumner i group by

Kod:
SQL = "Select Options_ID, Options_Name, Count(Relations.Rel_ID) As Antal " & _
" From Options Left Outer Join Relations " & _
" On Options_ID=Relations.OptionID " & _
" Where Options_Active=1 " & _
" Group By Options_ID, Options_Name"
Har du kört Mysql nu igen?
__________________
essentitia preter non sans multiplicandum
LarsG besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 18:05   #5
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
kolumnerna stämmer om jag inte e helt blind

Det är Access
Bifogade filer
Filtyp: zip newsletter.zip (14.5 KB, 1 visningar)
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 18:17   #6
LarsG
Medlem
Årets medlem 2001
 
Registrerad: 2000-12-03
Ort: Uppsala
Inlägg: 12 465
Lösningar: 958
leende

Jodå, jag ser att du använder Access. Anledningen till kommentaren om Mysql är att dom är dom enda som godkänner den felaktiga sql-satsen.

Alla kolumner i select-listan som inte ingår i en aggregatfunktion måste vara med i group by. Det var det jag menade med felaktiga kolumner. Testade du den varianten?
__________________
essentitia preter non sans multiplicandum
LarsG besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 18:24   #7
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
Japp det gjorde jag och fick samma fel
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 18:31   #8
LarsG
Medlem
Årets medlem 2001
 
Registrerad: 2000-12-03
Ort: Uppsala
Inlägg: 12 465
Lösningar: 958
leende

Då får vi försöka eliminera felkällor

Kod:
SQL = "Select Options_ID, Options_Name, Count(Relations.Rel_ID) As Antal " & _
" From Options , Join Relations " & _
" where Options_ID=Relations.OptionID " & _
" and Options_Active=1 " & _
" Group By Options_ID, Options_Name"
Blir det något fel om du testar denna?

Jag misstänker att det är join-klausulen som är problemet.
__________________
essentitia preter non sans multiplicandum
LarsG besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 18:35   #9
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
Syntaxfel i FROM-instruktion.
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 18:42   #10
LarsG
Medlem
Årets medlem 2001
 
Registrerad: 2000-12-03
Ort: Uppsala
Inlägg: 12 465
Lösningar: 958
leende

Nu då,

Kod:
SQL = "Select Options_ID, Options_Name, Count(Relations.Rel_ID) As Antal " & _
" From Options , Relations " & _
" where Options_ID=Relations.OptionID " & _
" and Options_Active=1 " & _
" Group By Options_ID, Options_Name"
klippte med ett join för mycket.
__________________
essentitia preter non sans multiplicandum
LarsG besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 18:47   #11
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
NU funkade det, tack LarsG, du e en klippa!
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 19:32   #12
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
Vad gör jag om "Count(Relations.Rel_ID)" är noll då???
Då visas inte posten alls
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 20:06   #13
LarsG
Medlem
Årets medlem 2001
 
Registrerad: 2000-12-03
Ort: Uppsala
Inlägg: 12 465
Lösningar: 958
leende

Jag menade aldrig att denn fråga som jag skrev var samma som din med outer join. Jag var bara ute efter att se var det blev fel.

Så här då

Kod:
SQL = "Select Options_ID, Options_Name,(select  Count(*) from relations where optionId = O.Options_id) As Antal " & _
" From Options as O" & _
" Where Options_Active=1 "
Nu vet jag inte om kolumnnamnen finns i options-tabellen.
__________________
essentitia preter non sans multiplicandum
LarsG besöker inte forumet just nu   Svara med citat
Äldre 2002-10-24, 20:09   #14
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
Den verkar däreomt funka Tack
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-25, 08:57   #15
Josef
Medlem
 
Registrerad: 2002-03-16
Ort: Göteborg
Inlägg: 3 123
Lösningar: 57
Kod:
dbPath = "driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath("newsletter.mdb")
Byt ut den mot den här:
Kod:
dbPath ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("newsletter.mdb")
Josef besöker inte forumet just nu   Svara med citat
Äldre 2002-10-25, 13:49   #16
aleborg
Medlem
 
Registrerad: 2001-01-28
Ort: Stockholm
Inlägg: 2 959
Lösningar: 24
Använd Jet drivrutinen i ett annat projekt och hade problem med en del kommandon då!
__________________
Personal sökes: http://www.binero.se/omoss/ledigajobb
aleborg besöker inte forumet just nu   Svara med citat
Äldre 2002-10-25, 14:55   #17
PatrikB
Medlem
 
Registrerad: 2000-03-31
Ort: Fiholm/Västerås
Inlägg: 2 713
Lösningar: 189
redigerat:

patrik var för snabb .... lösningen fanns ju redan

cya,
PatrikB
PatrikB besöker inte forumet just nu   Svara med citat
Svar
webForum > Utveckling > Webbutveckling > ASP

Trådverktyg
Visningsalternativ

Forumregler
Du får inte posta nya trådar
Du får inte posta svar
Du får inte bifoga filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är av
HTML-kod är av

Forumhopp


Alla tider är i GMT +1. Klockan är nu 22:25.


Powered by: vBulletin Version 3.8.6
Copyright © webForum