Seite 3 von 3

Re: String konvertieren

Verfasst: 10.06.2022 21:51
von Kiffi
Thorsten1867 hat geschrieben: 10.06.2022 20:47

Code: Alles auswählen

Word$ = Trim(InputRequester("Datenbank", "Befehl eingeben", ""))

SQL$ = "select * from tabelle where name like '%" + Word$ + "%'"
nee, lieber mit Bindungsvariable arbeiten (siehe alle SetDatabase*() - Befehle).
PB-Doku hat geschrieben:Bindungsvariablen machen das Erstellen von Statements mit variablen Daten leichter, denn es gibt keine Notwendigkeit, diese Daten in den String einzufügen. Der Statement-String kann die Platzhalter enthalten, und die Daten werden vor Ausführung der Anweisung verknüpft ("gebunden"). Dieses Verfahren vermeidet auch Sicherheitslücken aufgrund von möglicher "SQL-Injection", welche auftreten können, wenn Daten (wie Strings) direkt in den Anweisungstext eingefügt werden. Da die Anweisung nur den Platzhalter enthält, besteht keine Gefahr.

Re: String konvertieren

Verfasst: 11.06.2022 10:31
von TroaX
PB-Doku hat geschrieben:Bindungsvariablen machen das Erstellen von Statements mit variablen Daten leichter, denn es gibt keine Notwendigkeit, diese Daten in den String einzufügen. Der Statement-String kann die Platzhalter enthalten (präpariert - prepared Statement), und die Daten werden vor Ausführung der Anweisung verknüpft ("gebunden"). Dieses Verfahren vermeidet auch Sicherheitslücken aufgrund von möglicher "SQL-Injection", welche auftreten können, wenn Daten (wie Strings) direkt in den Anweisungstext eingefügt werden. Da die Anweisung nur den Platzhalter enthält und enthaltene SQL-Anweisungen in den übergebenen Werten nicht mehr interpretiert werden, besteht keine Gefahr.
Hier muss ich echt mal sagen, das mir die Formulierung auch nicht sonderlich gut gelungen erscheint. Aber wir kennen ja mittlerweile alle, das in der PB-Hilfe ungern das Kind beim Namen genannt wird. Vor allem, wenn sich die Formulierungen oder Erklärungen ein wenig an dem anlehnen, was gebräuchlicher ist :lol:

Re: String konvertieren

Verfasst: 17.06.2022 10:57
von Wolfvater Loki
Danke für jede einzelne Hilfe. Mit langem Warten, tut mir leid. Trotzdem danke für die Hilfe.

Re: String konvertieren

Verfasst: 09.07.2022 15:04
von al90
Hi,

ich weis jetzt nicht ob ich das richtig verstanden habe. Aber zu diesem Thema fiel mir wieder ein kleiner Code ein
den ich selbst mal für ein Project benötigte & Entwickelte. Dabei kann man wunderbar mir Arrays arbeiten da diese
ja bekanntlich sehr schnell sind. (Name$(0-65535)) Der Zugriff darauf erfolgt somit in Windeseile. Der Nachteil
ist das wiederholungen nicht auszuschließen sind. Prozentual gesehen aber eher unwarscheinlich.

Hier mal der Code. Vielleicht ist dieser auch nützlich. :?:

Code: Alles auswählen

Procedure.i GetHashCode(Extension$)

Protected result.w, x.i

For x=1 To Len(Extension$)
  result * 255
  result + Asc(Mid(Extension$,i,1))
Next

ProcedureReturn result & $FFFF

EndProcedure

; HashCode von 0 - 65535 ermitteln.

Debug GetHashCode("EXE")
Debug GetHashCode("exe")
Debug GetHashCode("TXT")
Debug GetHashCode("txt")
Falls Groß/Klein schreibung nicht berücksichtigt werden soll, einfach mit UCase/LCase arbeiten. :wink: