WHERE ~searchfor~ LIKE '%~searchstring~%'

Alles, was MariaDB und MySQL betrifft, kann hier besprochen werden.

WHERE ~searchfor~ LIKE '%~searchstring~%'

Postby juergen&lx » 01. January 2013 09:33

Ein Frohes Neues Jahr erstmal an Alle,

in einer Tabelle mit gespeicherten diversen komplexen SQL-Abfragen fand ich unter anderem
Code: Select all
SELECT * FROM `tabelle` WHERE ~searchfor~ LIKE '%~searchstring~%'
Diese Art der Programmierung ist mir neu und ich konnte bis hierher noch nicht herausfinden, wie die WHERE ~searchfor~ LIKE '%~searchstring~%' durch reale Variable ersetzt werden.
Und Warum so und nicht anders? Eine Anweisung wie
Code: Select all
$where = "WHERE '" . $searchfor . "' LIKE '%" . $searchstring . "%'";
$sql = "SELECT * FROM `tabelle` " . $where;
hätte es sicher auch getan.

Vielleicht hat jemand von Euch da Draußen eine oder mehr Antworten.
Last edited by juergen&lx on 01. January 2013 15:15, edited 1 time in total.
Jürgen

weiter suchen und suche und such und suc und su und s und .......................[Kopfkratz]..wonach suche ich eigentlich?
juergen&lx
 
Posts: 154
Joined: 18. February 2004 21:36
Location: in einem Dorf am Rande des Strombergs
Operating System: Linux

Re: WHERE ~searchfor~ LIKE '%~searchstring~%'

Postby Altrea » 01. January 2013 10:09

Hallo juergen&lx,

Meine Vermutung ist, dass die Datei nicht direkt ausgeführt wird sondern über ein übergeordnetes Script eingelesen und mit String-Replace manipuliert wird, so eine Art Template-Engine. Das macht aus meiner Sicht an dieser Stelle wenig Sinn, bzw. haben sich dort mitlerweile andere Techniken durchgesetzt, aber eine andere Erklärung habe ich für dieses von dir gezeigte Konstrukt nicht.

mit freundlichen Grüßen,
Altrea

P.S.: Auch dir natürlich ein frohes neues Jahr. Ich hoffe du bist gut hineingerutscht :D
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 8286
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 10 Pro x64

Re: WHERE ~searchfor~ LIKE '%~searchstring~%'

Postby juergen&lx » 01. January 2013 11:18

Hallo Altrea,
danke für die schnelle Antwort.

Rund 80% des Programms einschließlich Texte, Übersetzungen in mehreren Sprachen, Erklärungen, InputForm und weitere Anweisungen / Optionen sind in Tabellen versteckt,
Links werden ausschließlich im CONCAT gebildet, usw. usw.
Eine SQL-Funktion ruft die nächste auf.
Dafür sind die PHP-Basics sehr schlank, und saumäßig schnell.
Last edited by juergen&lx on 01. January 2013 15:15, edited 1 time in total.
Jürgen

weiter suchen und suche und such und suc und su und s und .......................[Kopfkratz]..wonach suche ich eigentlich?
juergen&lx
 
Posts: 154
Joined: 18. February 2004 21:36
Location: in einem Dorf am Rande des Strombergs
Operating System: Linux

Re: WHERE ~searchfor~ LIKE '%~searchstring~%'

Postby Altrea » 01. January 2013 12:45

juergen&lx wrote:Rund 80% des Programms einschließlich Texte, Übersetzungen in mehreren Sprachen, Erklärungen, InputForm und weitere Anweisungen / Optionen sind in Tabellen versteckt

Das ist in vielen Situationen sogar durchaus sinnvoll, zum Beispiel bei internationalization (i18n) and localization (l10n). Datenbankzugriffe haben gewisse Vorteile gegenüber Dateizugriffen, vor Allem was Performance und simultane Zugriffe betrifft. Je umfangreicher die Anwendung ist, desto mehr rechnet sich das natürlich auch. Es gibt aber auch immer mehrere Wege zum Ziel.

juergen&lx wrote:Eine SQL-Funktion ruft die nächste auf.

Darunter kann ich mir vieles vorstellen, nur nichts Konkretes.

juergen&lx wrote:Dafür sind die PHP-Basics sehr schlank, und saumäßig schnell.

PHP ist für eine Interpretersprache schon relativ fix, vor allem wenn man sich nicht an jede Regel für sauberen Code hält. So geht zum Beispiel OOP gut zu Lasten der Performance. Prozedurale Programmierung mit PHP kann unter bestimmten Bedingungen selbst bei 1000en Zeilen Code fast so performant sein wie reines HTML.

Wenn du hinter des Rätsels Lösung mit dem Konstrukt gekommen bist kannst du ja mal Berichten, was es damit auf sich hat.
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 8286
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 10 Pro x64


Return to MariaDB - MySQL

Who is online

Users browsing this forum: No registered users and 2 guests