PDA

Bekijk Volledige Versie : Meerdere INNER JOIN (asp.net, vb, ms access)



gandert
16/08/07, 03:25
Ik weet hoe ik 1 INNER JOIN kan doen maar weet niet hoe ik meerdere doe.

Nu is het mogelijk dat entries.FKcategoryId1 kan veranderd worden naar category.categoryname.

Wat ik wil:

Dat volgende gegevens allemaal veranderd kunnen worden:
entries.FKcategoryId1 naar category.categoryname
entries.FKcategoryId2 naar category.categoryname
entries.FKcategoryId3 naar category.categoryname
entries.FKcategoryId4 naar category.categoryname

bv:
entries.FKcategoryId1 = "1", category.id = "1" en category.categoryname = "categorienaam"

dus het moet "categorienaam" tonen ipv "1" (dit voor de 4 (FKcategoryId1, FKcategoryId2, ...)



<asp:DataList ID="DataList1" runat="server" DataSourceID="AccessDataSourceEntries">
<ItemTemplate>



<h1 class="asp"><asp:HyperLink CssClass="live" ID="HyperLink2" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.id", "comment.aspx?id={0}")%>'>
<%# Eval("titel") %></asp:HyperLink></h1>

<h2 class="php"><%# Eval("date") %> in
<asp:HyperLink CssClass="stream" ID="HyperLink1" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.FKcategoryId1", "comment.aspx?FKcategoryId1={0}")%>'>
<%#Eval("FKcategoryId1")%></asp:HyperLink>
<asp:HyperLink CssClass="stream" ID="HyperLink5" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.FKcategoryId2", "comment.aspx?FKcategoryId2={0}")%>'>
<%#Eval("FKcategoryId2")%></asp:HyperLink>
<asp:HyperLink CssClass="stream" ID="HyperLink6" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.FKcategoryId3", "comment.aspx?FKcategoryId3={0}")%>'>
<%#Eval("FKcategoryId3")%></asp:HyperLink>
<asp:HyperLink CssClass="stream" ID="HyperLink7" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.FKcategoryId4", "comment.aspx?FKcategoryId4={0}")%>'>
<%#Eval("FKcategoryId4")%></asp:HyperLink>

&nbsp;&nbsp;&nbsp; - &nbsp;&nbsp;&nbsp;
<asp:HyperLink CssClass="stream" ID="HyperLink3" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.id", "comment.aspx?id={0}")%>'>
Comments</asp:HyperLink></h2>

<h2 class="ajax"><%# Eval("text") %></h2>
<asp:HyperLink CssClass="stream" ID="HyperLink4" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.FKcategoryId1", "comment.aspx?FKcategoryId1={0}")%>'>
<%#Eval("FKcategoryId1")%></asp:HyperLink>
<asp:HyperLink CssClass="stream" ID="HyperLink8" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.FKcategoryId2", "comment.aspx?FKcategoryId2={0}")%>'>
<%#Eval("FKcategoryId2")%></asp:HyperLink>
<asp:HyperLink CssClass="stream" ID="HyperLink9" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.FKcategoryId3", "comment.aspx?FKcategoryId3={0}")%>'>
<%#Eval("FKcategoryId3")%></asp:HyperLink>
<asp:HyperLink CssClass="stream" ID="HyperLink10" runat="server" NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.FKcategoryId4", "comment.aspx?FKcategoryId4={0}")%>'>
<%#Eval("FKcategoryId4")%></asp:HyperLink>


<hr class="webdesigner" />
</ItemTemplate>
</asp:DataList><asp:AccessDataSource ID="AccessDataSourceEntries" runat="server"
DataFile="~/App_Data/gandert.mdb"
SelectCommand="SELECT entries.id, entries.titel, entries.text, entries.FKcategoryId1, entries.FKcategoryId2, entries.FKcategoryId3, entries.FKcategoryId4, entries.date, entries.must, category.categoryname
FROM (entries INNER JOIN category ON entries.FKcategoryId1 = category.id) ORDER BY [entries.id] DESC">

</asp:AccessDataSource>

Eris
16/08/07, 10:05
Mods kan je even een hele harde trap geven naar het juiste forum ;)
http://www.webhostingtalk.nl/scripting-en-programmeren/

Je zou kunnen proberen met as maar het lijk me sterk

gjtje
16/08/07, 13:41
SELECT entries.id, entries.titel, entries.text, A.categoryname, B.categoryname, C.categoryname, D.categoryname, entries.date, entries.must
FROM entries
INNER JOIN category A ON entries.FKcategoryId1 = A.id
INNER JOIN category B ON entries.FKcategoryId2 = B.id
INNER JOIN category C ON entries.FKcategoryId3 = C.id
INNER JOIN category D ON entries.FKcategoryId4 = D.id
ORDER BY [entries.id] DESC

gandert
16/08/07, 14:10
bedankt gjtje.

Ziet er uit dat het bijna gaat werken maar krijg nu volgende foutcode:


Syntaxisfout (operator ontbreekt) in query-expressie entries.FKcategoryId1 = A.id
INNER JOIN category B ON entries.FKcategoryId2 = B.id
INNER JOIN category C ON entries.FKcategoryId3 = C.id
INNER JOIN category D ON entries.FKcategoryId4 = D.id