dahlgren Medlem sedan aug. 2001 1 946 inlägg Frågan 4 nov. 2001 10:27 #1 Jag har massa bilder med bildertexter som ligger i en databas. Albumen väljs ut genom värdet i kolumnen album. Nu är det så att jag vill ha en gemensam text för alla bilder som heter tex jul. Hur gör jag det på bästa sätt?
------------------
/Dahlgren
"Det finns saker som man måste vara fackman för att inte förstå"
L LarsG Medlem sedan dec. 2000 12 464 inlägg Du lagrar beskrivningen i en separat tabell.
album
-----
id!titel!beskrivningsid
besrivningar
------
id!beskrivning
Då du vill ha beskrivningen och övrig info för ett album :
select a.*,b.beskrivnig
from album as a inner join beskrivningar as b
on a.beskrivningsid = b.id
where a.titel = 'Jul'
------------------
essentitia preter non sans multiplicandum
dahlgren Medlem sedan aug. 2001 1 946 inlägg För står inte riktigt vad som är vad i din kod. så här ser tabbellerna ut:
Album
-namn
-bild
-osv
Albumtext
-namn
-albumtext
Namnen är samma i båda tabellerna.
------------------
/Dahlgren
"Det finns saker som man måste vara fackman för att inte förstå"
L LarsG Medlem sedan dec. 2000 12 464 inlägg Då har du samma lösning som jag. Så vad är problemet?
------------------
essentitia preter non sans multiplicandum
dahlgren Medlem sedan aug. 2001 1 946 inlägg Hur jag ändrar koden så att den passar mina tabeller.
------------------
/Dahlgren
"Det finns saker som man måste vara fackman för att inte förstå"
L LarsG Medlem sedan dec. 2000 12 464 inlägg Oki doki.
select a.*,at.albumtext
from album as a inner join albumtext as at
on a.namn = b.namn
where a.namn = 'Jul'
t.ex.
------------------
essentitia preter non sans multiplicandum
dahlgren Medlem sedan aug. 2001 1 946 inlägg Då får jag upp dettta felmedelande:
Kompileringsfel i Microsoft VBScript fel '800a03ea'
Syntaxfel
/fotoalbum/album.asp, rad 13
SQL=select a.*,at.albumtext
----^
------------------
/Dahlgren
"Det finns saker som man måste vara fackman för att inte förstå"
L LarsG Medlem sedan dec. 2000 12 464 inlägg Du har glömt strängavgränsare.
sql = "select a.*,at.albumtext from album as a inner join albumtext as at on a.namn = b.namn where a.namn = 'Jul'"
------------------
essentitia preter non sans multiplicandum
dahlgren Medlem sedan aug. 2001 1 946 inlägg Då får jag detta felmedelande.
Microsoft OLE DB Provider for ODBC Drivers fel '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in JOIN operation.
/fotoalbum/album.asp, rad 15
------------------
/Dahlgren
"Det finns saker som man måste vara fackman för att inte förstå"
L LarsG Medlem sedan dec. 2000 12 464 inlägg Såg ett fel i min select-sats
sql = "select a.*,at.albumtext from album as a inner join albumtext as at on a.namn = [b]at[/b].namn where a.namn = 'Jul'"
Hur ser din kod ut just nu?
------------------
essentitia preter non sans multiplicandum
dahlgren Medlem sedan aug. 2001 1 946 inlägg Nu kom det ett nytt felmedleande
Microsoft OLE DB Provider for ODBC Drivers fel '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Cannot join on Memo, OLE, or Hyperlink Object (at.namn=a.namn).
/fotoalbum/album.asp, rad 14
------------------
/Dahlgren
"Det finns saker som man måste vara fackman för att inte förstå"
L LarsG Medlem sedan dec. 2000 12 464 inlägg Du kan byta datatyp på namnfälten och använda varchar(30) (eller vilken maxlängd du vill ha, upp till 255 går bra). Memo är avsett för stora textmassor.
------------------
essentitia preter non sans multiplicandum