/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Søg i flere tabeller
Fra : lars gregersen


Dato : 27-06-01 01:23

Hej Alle
Jeg prøver på at få lavet en søgefunktion der kan søge i flere tabeller. Har
læst mig lidt frem til at union skulle være en måde at gøre det på. Jeg har
prøvet nedstående og det gør da lidt af det...men.....Er jeg helt ude på et
skråplan eller hvad.

Her er hvad jeg har i min SQL:

SQL = "SELECT * FROM flash_1 WHERE overskrift LIKE '%" &
Request.Form("soeg") & "%' or filnavn like '%" & Request.Form("soeg") & "%'
or beskrivelse like '%" & Request.Form("soeg") & "%' UNION SELECT * FROM
Tabel1 WHERE overskrift LIKE '%" & Request.Form("soeg") & "%' or filnavn
like '%" & Request.Form("soeg") & "%' or beskrivelse like '%" &
Request.Form("soeg") & "%'"

Det skal siges at jeg har 8 tabeller

Med venlig hilsen
Lars



 
 
Lars Hoffmann (27-06-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 27-06-01 07:49

lars gregersen wrote in dk.edb.internet.webdesign.serverside.asp:
> Jeg har
> prøvet nedstående og det gør da lidt af det...men.....Er jeg helt ude på et
> skråplan eller hvad.
>
> Her er hvad jeg har i min SQL:
>
> <SNIP SQL>

Det ser da meget rigtigt ud, hvad er problemet?
Med venlig hilsen Lars

--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

lars gregersen (29-06-2001)
Kommentar
Fra : lars gregersen


Dato : 29-06-01 01:28

Jeg fik vidst ikke uddybet ordentligt....
Problemet er at når jeg søger på noget i min flash_1 tabel så går der fint.
Men når jeg søger i Tabel1 finder den godt nok de poster som jeg søgte på
men de bliver ikke vist i samme rækkefølge som flash_1 tabellen. Et andet
problem er at når jeg så vil tilføje endnu en tabel til SQL sætningen får
jeg en fejlmeddelse:

Microsoft OLE DB Provider for ODBC Drivers fejl '80040e10'
[Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var
ventet 1.
/ats_fejlmelding/undervisning/soeger.asp, line 38

Min SQL ser ud som nedstående når jeg vil søge i en tredie tabel(tabel2):
SQL = "SELECT * FROM flash_1 WHERE overskrift LIKE '%" &
Request.Form("soeg") & "%' or filnavn like '%" & Request.Form("soeg") & "%'
or beskrivelse like '%" & Request.Form("soeg") & "%' UNION SELECT * FROM
Tabel1 WHERE overskrift LIKE '%" & Request.Form("soeg") & "%' or filnavn
like '%" & Request.Form("soeg") & "%' or beskrivelse like '%" &
Request.Form("soeg") & "%' UNION SELECT * FROM Tabel2 WHERE overskrift LIKE
'%" & Request.Form("soeg") & "%' or filnavn like '%" & Request.Form("soeg")
& "%' or beskrivelse like '%" & Request.Form("soeg") & "%'"

Jeg sender lige hele mit ASP script:
<%
strKeyword = Request.Form("soeg")
If Request.Form("soeg") <> "" then
Set DB = Server.CreateObject("ADODB.Connection")
DBSti = "DBQ=" & Server.Mappath("db2.mdb")
DB.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBSti
SQL = "SELECT * FROM flash_1 WHERE overskrift LIKE '%" &
Request.Form("soeg") & "%' or filnavn like '%" & Request.Form("soeg") & "%'
or beskrivelse like '%" & Request.Form("soeg") & "%' UNION SELECT * FROM
Tabel1 WHERE overskrift LIKE '%" & Request.Form("soeg") & "%' or filnavn
like '%" & Request.Form("soeg") & "%' or beskrivelse like '%" &
Request.Form("soeg") & "%' UNION SELECT * FROM Tabel2 WHERE overskrift LIKE
'%" & Request.Form("soeg") & "%' or filnavn like '%" & Request.Form("soeg")
& "%' or beskrivelse like '%" & Request.Form("soeg") & "%'"

'SQL = "SELECT * FROM flash_1, Tabel1 WHERE flash_1.overskrift LIKE '%" &
strKeyword & "%' or Tabel1.overskrift LIKE '%" & strKeyword & "%'"


Set rs = db.Execute (SQL)
If not rs.eof then
Response.Write "<table border=0 cellspacing=0 >"
Response.Write "<tr>"
Response.Write "<b>" & "din søgning:" & "</b><p>"


Do until rs.eof

Response.Write "<tr><td colspan=3 class='split' bgcolor='#333399'
width=300><b>" & "&nbsp;" & rs("overskrift") & "</td></b>" & "<tr>"

%>

<%
'De 2 nedstående linier var bare et forsøg på noget andet. Den søger godt
nok men udskriver ikke lige de data jeg søger på...
'Response.Write "<tr><td><b>filnavn:</b>"
'response.write "&nbsp;&nbsp;<A HREF="& rs("links") & " >" & rs("filnavn") &
"</td></tr>"


'Response.Write "<tr><td><b>beskrivelse:</td></tr>"
'Response.Write "<tr><td width='300'>" & rs("beskrivelse") & "</td></tr>"


Response.Write "<tr><td height='20'></td></tr>"
rs.movenext
Loop
Response.Write "</table>"
Else
Response.Write "<b>Der var intet der matchede din søgekriterier!</b>"
End if
End if

Puha... det var en stor omgang håber det kan overskues.
Med Venlig hilsen Lars


"Lars Hoffmann" <lars@hoffmann.ac> skrev i en meddelelse
news:9hbvkk$li9$1@sunsite.dk...
> lars gregersen wrote in dk.edb.internet.webdesign.serverside.asp:
> > Jeg har
> > prøvet nedstående og det gør da lidt af det...men.....Er jeg helt ude på
et
> > skråplan eller hvad.
> >
> > Her er hvad jeg har i min SQL:
> >
> > <SNIP SQL>
>
> Det ser da meget rigtigt ud, hvad er problemet?
> Med venlig hilsen Lars
>
> --
> Brug Validator service: http://www.html.dk/validator
> - Tast din URL én gang, og validér dokumentet hos 12 validatorer
> - Understøtter HTML, CSS og søgemaskineoptimering



lars gregersen (29-06-2001)
Kommentar
Fra : lars gregersen


Dato : 29-06-01 01:40

Vrøvl:
'De 2 nedstående linier var bare et forsøg på noget andet. Den søger godt
nok men udskriver ikke lige de data jeg søger på...
'SQL = "SELECT * FROM flash_1, Tabel1 WHERE flash_1.overskrift LIKE '%" &
strKeyword & "%' or Tabel1.overskrift LIKE '%" & strKeyword & "%'"

Lars

"lars gregersen" <larsgre@mail1.stofanet.dk> skrev i en meddelelse
news:3b3bc875$0$3244$ba624c82@nntp01.dk.telia.net...
> Jeg fik vidst ikke uddybet ordentligt....
> Problemet er at når jeg søger på noget i min flash_1 tabel så går der
fint.
> Men når jeg søger i Tabel1 finder den godt nok de poster som jeg søgte på
> men de bliver ikke vist i samme rækkefølge som flash_1 tabellen. Et andet
> problem er at når jeg så vil tilføje endnu en tabel til SQL sætningen får
> jeg en fejlmeddelse:
>
> Microsoft OLE DB Provider for ODBC Drivers fejl '80040e10'
> [Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var
> ventet 1.
> /ats_fejlmelding/undervisning/soeger.asp, line 38
>
> Min SQL ser ud som nedstående når jeg vil søge i en tredie tabel(tabel2):
> SQL = "SELECT * FROM flash_1 WHERE overskrift LIKE '%" &
> Request.Form("soeg") & "%' or filnavn like '%" & Request.Form("soeg") &
"%'
> or beskrivelse like '%" & Request.Form("soeg") & "%' UNION SELECT * FROM
> Tabel1 WHERE overskrift LIKE '%" & Request.Form("soeg") & "%' or filnavn
> like '%" & Request.Form("soeg") & "%' or beskrivelse like '%" &
> Request.Form("soeg") & "%' UNION SELECT * FROM Tabel2 WHERE overskrift
LIKE
> '%" & Request.Form("soeg") & "%' or filnavn like '%" &
Request.Form("soeg")
> & "%' or beskrivelse like '%" & Request.Form("soeg") & "%'"
>
> Jeg sender lige hele mit ASP script:
> <%
> strKeyword = Request.Form("soeg")
> If Request.Form("soeg") <> "" then
> Set DB = Server.CreateObject("ADODB.Connection")
> DBSti = "DBQ=" & Server.Mappath("db2.mdb")
> DB.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBSti
> SQL = "SELECT * FROM flash_1 WHERE overskrift LIKE '%" &
> Request.Form("soeg") & "%' or filnavn like '%" & Request.Form("soeg") &
"%'
> or beskrivelse like '%" & Request.Form("soeg") & "%' UNION SELECT * FROM
> Tabel1 WHERE overskrift LIKE '%" & Request.Form("soeg") & "%' or filnavn
> like '%" & Request.Form("soeg") & "%' or beskrivelse like '%" &
> Request.Form("soeg") & "%' UNION SELECT * FROM Tabel2 WHERE overskrift
LIKE
> '%" & Request.Form("soeg") & "%' or filnavn like '%" &
Request.Form("soeg")
> & "%' or beskrivelse like '%" & Request.Form("soeg") & "%'"
>
> 'SQL = "SELECT * FROM flash_1, Tabel1 WHERE flash_1.overskrift LIKE '%" &
> strKeyword & "%' or Tabel1.overskrift LIKE '%" & strKeyword & "%'"
>
>
> Set rs = db.Execute (SQL)
> If not rs.eof then
> Response.Write "<table border=0 cellspacing=0 >"
> Response.Write "<tr>"
> Response.Write "<b>" & "din søgning:" & "</b><p>"
>
>
> Do until rs.eof
>
> Response.Write "<tr><td colspan=3 class='split' bgcolor='#333399'
> width=300><b>" & "&nbsp;" & rs("overskrift") & "</td></b>" & "<tr>"
>
> %>
>
> <%
> 'De 2 nedstående linier var bare et forsøg på noget andet. Den søger godt
> nok men udskriver ikke lige de data jeg søger på...
> 'Response.Write "<tr><td><b>filnavn:</b>"
> 'response.write "&nbsp;&nbsp;<A HREF="& rs("links") & " >" & rs("filnavn")
&
> "</td></tr>"
>
>
> 'Response.Write "<tr><td><b>beskrivelse:</td></tr>"
> 'Response.Write "<tr><td width='300'>" & rs("beskrivelse") & "</td></tr>"
>
>
> Response.Write "<tr><td height='20'></td></tr>"
> rs.movenext
> Loop
> Response.Write "</table>"
> Else
> Response.Write "<b>Der var intet der matchede din søgekriterier!</b>"
> End if
> End if
>
> Puha... det var en stor omgang håber det kan overskues.
> Med Venlig hilsen Lars
>
>
> "Lars Hoffmann" <lars@hoffmann.ac> skrev i en meddelelse
> news:9hbvkk$li9$1@sunsite.dk...
> > lars gregersen wrote in dk.edb.internet.webdesign.serverside.asp:
> > > Jeg har
> > > prøvet nedstående og det gør da lidt af det...men.....Er jeg helt ude

> et
> > > skråplan eller hvad.
> > >
> > > Her er hvad jeg har i min SQL:
> > >
> > > <SNIP SQL>
> >
> > Det ser da meget rigtigt ud, hvad er problemet?
> > Med venlig hilsen Lars
> >
> > --
> > Brug Validator service: http://www.html.dk/validator
> > - Tast din URL én gang, og validér dokumentet hos 12 validatorer
> > - Understøtter HTML, CSS og søgemaskineoptimering
>
>



Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408877
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste