Problem:
Volltextsuche via ODBC mit Prozentzeichen wenn Prozentzeichen an erster Stelle des Suchstrings steht.
Umgebung:
1. Windows Vista Business
1. SQL Server Express
2. Apache 2.2
3. PHP 5.2.3
4. Datenbankverbindung via ODBC mit Treiber Version 6.00.6000.16386 als System DSN
Erläuterung:
Es gibt ein Suchformular, das dem Benutzer die Eingabe eines Suchbegriffs mit Prozentzeichen als Wildcard erlaubt.
Funktioniert alles, ausgenommen das Prozentzeichen steht an der ersten Position des Suchbegriffs. Manchmal
wird vom Apache ein Ergebnis angezeigt, in der Regel aber nicht. Das scheint unabhängig vom Typ des Feldes
zu sein, das durchsucht werden soll, manchmal funktionierts bei Textfeldern, auf keinen Fall bei Datumsfeldern.
Beispiel fuer Query:
SELECT DISTINCT TOP 11 FF1, FF2, FF3, CONVERT(VARCHAR, FF4, 104) AS 'FF4'
FROM Tablename
WHERE (CONVERT(VARCHAR, FF4, 104) LIKE '%22')
Diese Abfrage funktioniert ohne Probleme wenn man sie direkt im SQL Server Management Studio Express benutzt.
Apache error.log liefert folgendes
[Tue Sep 04 16:48:10 2007] [notice] Parent: child process exited with status 3221225725 -- Restarting.
[Tue Sep 04 16:48:10 2007] [notice] Apache/2.2.4 (Win32) PHP/5.2.3 configured -- resuming normal operations
[Tue Sep 04 16:48:10 2007] [notice] Server built: Feb 24 2007 13:17:21
[Tue Sep 04 16:48:10 2007] [notice] Parent: Created child process 2608
[Tue Sep 04 16:48:10 2007] [notice] Child 2608: Child process is running
[Tue Sep 04 16:48:10 2007] [notice] Child 2608: Acquired the start mutex.
[Tue Sep 04 16:48:10 2007] [notice] Child 2608: Starting 250 worker threads.
[Tue Sep 04 16:48:10 2007] [notice] Child 2608: Starting thread to listen on port 80.
Ist das nun ein SQL-(vermute nein!), ODBC- oder PHP- oder Apache-Problem?
Hat irgendjemand eine Idee?Bin mir nicht sicher ob das wirklich hier rein passt.
Volltextsuche via ODBC mit Prozentzeichen wenn Prozentzeichen an erster Stelle des Suchstrings steht.
Umgebung:
1. Windows Vista Business
1. SQL Server Express
2. Apache 2.2
3. PHP 5.2.3
4. Datenbankverbindung via ODBC mit Treiber Version 6.00.6000.16386 als System DSN
Erläuterung:
Es gibt ein Suchformular, das dem Benutzer die Eingabe eines Suchbegriffs mit Prozentzeichen als Wildcard erlaubt.
Funktioniert alles, ausgenommen das Prozentzeichen steht an der ersten Position des Suchbegriffs. Manchmal
wird vom Apache ein Ergebnis angezeigt, in der Regel aber nicht. Das scheint unabhängig vom Typ des Feldes
zu sein, das durchsucht werden soll, manchmal funktionierts bei Textfeldern, auf keinen Fall bei Datumsfeldern.
Beispiel fuer Query:
SELECT DISTINCT TOP 11 FF1, FF2, FF3, CONVERT(VARCHAR, FF4, 104) AS 'FF4'
FROM Tablename
WHERE (CONVERT(VARCHAR, FF4, 104) LIKE '%22')
Diese Abfrage funktioniert ohne Probleme wenn man sie direkt im SQL Server Management Studio Express benutzt.
Apache error.log liefert folgendes
[Tue Sep 04 16:48:10 2007] [notice] Parent: child process exited with status 3221225725 -- Restarting.
[Tue Sep 04 16:48:10 2007] [notice] Apache/2.2.4 (Win32) PHP/5.2.3 configured -- resuming normal operations
[Tue Sep 04 16:48:10 2007] [notice] Server built: Feb 24 2007 13:17:21
[Tue Sep 04 16:48:10 2007] [notice] Parent: Created child process 2608
[Tue Sep 04 16:48:10 2007] [notice] Child 2608: Child process is running
[Tue Sep 04 16:48:10 2007] [notice] Child 2608: Acquired the start mutex.
[Tue Sep 04 16:48:10 2007] [notice] Child 2608: Starting 250 worker threads.
[Tue Sep 04 16:48:10 2007] [notice] Child 2608: Starting thread to listen on port 80.
Ist das nun ein SQL-(vermute nein!), ODBC- oder PHP- oder Apache-Problem?
Hat irgendjemand eine Idee?Bin mir nicht sicher ob das wirklich hier rein passt.
Kommentar