Supportnet / Forum / Datenbanken
Datenbank abfrage via ASP
Frage
Hallo,
ich habe eine umfangreiche Accessdatenbank, die ich via ODBC eingebunden habe. Jetzt möchte ich die Ausgabe so steuern, daß nur die Datensätze ausgelesen werden, die das kriterium "ja" erfüllen. Ich habe also Feldnamen vergeben, wenn das Kriterium erfüllt ist schreibe ich ja in das entsprechende Feld.
Ich rufe die Datenbankabfrage so auf :
<%
Dim Connect, Ondojos
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "DSN=dojos"
Set Ondojos = Connect.Execute("SELECT * FROM dojos ORDER by PLZ Where Stilrichtung= "%Aikido%" ")%>
Das Feld ist in diesem Fall Stilrichtung. Ich bekomme aber dann folgenden Fehler :
Kompilierungsfehler in Microsoft VBScript- Fehler 800a0408
Ungültiges Zeichen
/kampfkunst2.de/probe.asp, line 9
Set Ondojos = Connect.Execute("SELECT * FROM dojos ORDER by PLZ Where Stilrichtung= "%Aikido%" ")
Hat jemand eine Idee ?
Rüdiger
Antwort 1 von Karl
Hi twain
Dein SQL-String is mir nicht so ganz klar:
("SELECT * FROM dojos ORDER by PLZ Where Stilrichtung= "%Aikido%" ")
Wenn es KEIN Kopierfehler ist, dann:
1. Ist Aikido eine String-Variable?
Dann muss der SQL-String lauten:
strSQL= "SELECT * FROM dojos ORDER by PLZ Where Stilrichtung= [Apostroph]" & Aikido & "[Apostroph]"
2. Ist Aikido keine String-Variable?
Dann muss der SQL-String lauten:
strSQL= "SELECT * FROM dojos ORDER by PLZ Where Stilrichtung=" & Aikido
3. Ist Aikido keine Variable sondern ein Suchbegriff?
Dann muss der SQL-String lauten:
strSQL= "SELECT * FROM dojos ORDER by PLZ Where Stilrichtung LIKE [Apostroph]%Aikido%[Apostroph]"
([Apostroph] ist hier als Zeichen nicht darstellbar)
Das %-Zeichen ist in SQL ein Jokerzeichen!
mfg Karl
Dein SQL-String is mir nicht so ganz klar:
("SELECT * FROM dojos ORDER by PLZ Where Stilrichtung= "%Aikido%" ")
Wenn es KEIN Kopierfehler ist, dann:
1. Ist Aikido eine String-Variable?
Dann muss der SQL-String lauten:
strSQL= "SELECT * FROM dojos ORDER by PLZ Where Stilrichtung= [Apostroph]" & Aikido & "[Apostroph]"
2. Ist Aikido keine String-Variable?
Dann muss der SQL-String lauten:
strSQL= "SELECT * FROM dojos ORDER by PLZ Where Stilrichtung=" & Aikido
3. Ist Aikido keine Variable sondern ein Suchbegriff?
Dann muss der SQL-String lauten:
strSQL= "SELECT * FROM dojos ORDER by PLZ Where Stilrichtung LIKE [Apostroph]%Aikido%[Apostroph]"
([Apostroph] ist hier als Zeichen nicht darstellbar)
Das %-Zeichen ist in SQL ein Jokerzeichen!
mfg Karl
Antwort 2 von twain
Hallo Karl,
In der Datenbank (dojos) habe ich Spaltenüberschriften die viele Arten von Stilrichtungen benennen. Wenn jetzt ein Verein diese Stilrichtung betreibt, trage ich in der entsprechenden Spalte, hier also Aikido, ein ja ein. Jetzt sollen nur die Datensätze ausgegeben werden, die unter dem Spaltennamen ein ja stehen haben. Verständlich ?
Gruß
Rüdiger
In der Datenbank (dojos) habe ich Spaltenüberschriften die viele Arten von Stilrichtungen benennen. Wenn jetzt ein Verein diese Stilrichtung betreibt, trage ich in der entsprechenden Spalte, hier also Aikido, ein ja ein. Jetzt sollen nur die Datensätze ausgegeben werden, die unter dem Spaltennamen ein ja stehen haben. Verständlich ?
Gruß
Rüdiger

