LR^evil.sidMedlem sedan maj 2002552 inlägg
Jag kanske bara är trött och inte ser problem där det inte finns men jag kan inte plocka ut så första posten blir forumtråden (ursprungsinlägget) och resterande blir övriga inlägg ur den andra tabellen - forumposts.
forumthreads
¯¯¯¯¯¯¯¯¯¯¯
id ( auto-increment )
usr
title
post
quote
status
pdate
edate
locked
moved
ip
referer
accessed
forumposts
¯¯¯¯¯¯¯¯¯
id
usr
title
post
postdate
usrs
¯¯¯¯
id ( auto-increment )
usr
pwd
home
eml
showeml
name
showname
cty
ava
posts
sign
regdate
Hur skall jag göra en inner join för att få med alla poster i forumposts som har samma id som forumthreads id och samtidigt få med rätt användare till tråden och de olika inläggen. Om det går?
LarsGMedlem sedan dec. 200012 465 inlägg
select *
from forumthreads ft,
forumposts fp,
usrs u
where ft.id = fp.id
and fp.usr = u.id
Flyttas från ASP till sql.
LR^evil.sidMedlem sedan maj 2002552 inlägg
Sorry, med det blev inte som jag ville ha det. Har testat ett annat upplägg (som ger samma resultat, när jag tänker efter.)
sql = "select * from forumthreads ft " & _
"inner join forumposts fp on ft.id = fp.id " & _
"left outer join usrs u on ft.usr = u.id " & _
"order by fp.pdate asc"
men då är problemet att ft.title och ft.post blir en del av posterna i fp.
ft.title och ft.post skall vara den första raden i rs.getrows() medan fp.title och fp.post skall vara resten av raderna. Tror det blev rätt. : )
Den första posten i recordset skall vara trådens namn med trådens inlägg, datum och användare. Detta ligger i tabellen "forumthreads". Den andra posten i recordset skall vara första posten i tabellen "forumposts".
Hur skall jag göra för att åstakomma detta detta?
Tror jag är tydligare i detta inlägg än det förra. Man kan ju alltid hoppas.
[edit] Måste jag inte använda mig av någon slags OR mot ett värde som är unikt i de båda tabellerna för att lyckas med det?
LarsGMedlem sedan dec. 200012 465 inlägg
Du får nog använda union i så fall
select ft.id,ft.title,ft..post,u.usr,pdate
from forumthreads ft, usr u
where ft.usr = u.usr
union all
select fp.id, fp.title,fp.post,u.usr,postdate
from forumposts fp, usr u
where fp.usr = u.usr
order by ft.id,pdate
LR^evil.sidMedlem sedan maj 2002552 inlägg
sql = "select ft.tid, ft.title, ft.post, u.usr, ft.pdate " & _
"from forumthreads ft, usr u " & _
"where ft.usr = u.id " & _
"union all " & _
"select fp.tid, fp.title, fp.post, u.usr, fp.pdate " & _
"from forumposts fp, usr u " & _
"where fp.usr = u.id " & _
"order by ft.tid, pdate"
ger följande meddelande:
[TCX][MyODBC]You have an error in your SQL syntax near
'union all select fp.tid, fp.title, fp.post, u.usr, fp.pdate from
forumposts fp, ' at line 1
LarsGMedlem sedan dec. 200012 465 inlägg
Vilken version av Mysql har du? Stödet för union är ganska nytt.
LR^evil.sidMedlem sedan maj 2002552 inlägg
Under variables i winmysqladmin hittade jag version: 3.23.52-nt
Kan det vara det du syftar på och vilken version behöver jag för att union skall fungera?
LarsGMedlem sedan dec. 200012 465 inlägg
LR^evil.sidMedlem sedan maj 2002552 inlägg
Och var kan jag finna den? på https://www.mysql.com hittade jag bara v3.23.54
[edit] Glöm det. Jag hittade den...
LarsGMedlem sedan dec. 200012 465 inlägg
4.0 är fortfarande i teststadiet. Den finns under downloads.
Du kanske kan tänka dig att designa om tabellerna lite, så att du lagrar alla inlägg i forumposts, alltså även det första i varje tråd? I så fall skulle du bara behöva slå i den tabellen.
LR^evil.sidMedlem sedan maj 2002552 inlägg
Nja, jag är rätt nöjd med upplägget som det är.
Är det inte bättre att skilja på frågor och svar? När det blivit ett gäng frågor/svar så kommer det ju ta längre tid att hämta frågorna/svaren om de ligger i samma tabell.
LR^evil.sidMedlem sedan maj 2002552 inlägg
Btw... fungerar limit och isf från vilken version?
@ndersMedlem sedan juni 200026 914 inlägg
Limit fungerar, sedan länge.
mvh,
LR^evil.sidMedlem sedan maj 2002552 inlägg
Så trevligt, tack skall ni ha
LR^evil.sidMedlem sedan maj 2002552 inlägg
Well, intet nytt som inte för problem med sig.
Har upgraderat/bytt eller vad man nu skall kalla det. Jag har inte ändrat på någon kod sedan installationen och får nu felmeddelandet:
[TCX][MyODBC]Access denied for user: 'admin@127.0.0.1' (Using password: YES)
Har det blivit någon ändring i hur man skall koppla databasen?