[ordmärkning]
Primärnycklar, inte Premiärnycklar
[/ordmärkning]
För det första måste du nog lära dig vad en primärnyckel är.
En primärnyckel är en kolumn i en tabell vars värde i varje rad är unikt, dvs. att om man söker efter ett värde i en kolumn som är definierd som primärnyckel, skall endast en rad returneras. Man kan definiera flera primärnycklar i en tabell, som tillsammans ger ett unikt värde, och då kallas det sammansatt nyckel.
Därför kan jag inte tro att du har "Land,Stad,Telefon,Gata,Gata1,Tele1 och några till" som primärnycklar i din databas, såvida inte dessa ligger i egna tabeller.
Om man t.ex. har en tabell med adresser i, kan det tänkas att man till en början har kolumnerna
Förnamn
Efternamn
Land
Stad
Gatuadress
Postnunmmer
Telefon
För att kunna definiera en primärnyckel i denna tabell måste man garantera att samma värde inte kan dyka upp på flera rader. Det blir svårt att åstadkomma med dessa kolumner, så därför är det vanligt att man lägger till en kolumn med en räknare, ofta kallad ID.
Jag antar att det du vill är att lista ut flera kolumner, i de rader som matchar Land eller Stad.
Vad du kallar sökfältet i formuläret har ingen som helst betydelse. Det finns ingen sådan koppling. Skillnaden ligger i hur du frågar databasen, och hur du listar ut svaret.
Låt oss säga att du har ett fält i formuläret, som heter "search".
mSearch=request("search")
'Lägger värdet från sökfältet i variablen mSearch
SQL = "SELECT * From sok WHERE Land LIKE '%" & mSearch & "%' OR Stad LIKE '%" & mSearch & "%'"
'skapar SQL-satsen som ska skickas till databasmotorn
set rs=Connect.Execute(SQL)
'sökningen exekveras. Dags att lista träffarna
if not rs.eof then
do until rs.eof
%>
Stad: <a href="<%=rs("Stad")%>.html"><%=rs("Stad")%></a><BR>
Land: <%=rs("Land")%><BR>
Gata: <%=rs("Gata")%><BR>
Gata1: <%=rs("Gata1")%><BR>
osv...
<%rs.movenext
loop
[Redigerat av emission den 07 jun 2000]