Der folgende Beitrag wurde am 20. 08. 2001, 11:42 Uhr von Tobias Weisserth veröffentlicht.
Hallo Ihr fleissigen und klugen Helferlein,
Folgende Frage:
Dies ist ein Beispiel aus der Einweisung in DBI von CPAN:
my $sth = $dbh->prepare('SELECT * FROM people WHERE lastname = ?')
Jetzt die Frage:
Kann ich 'SELECT * FROM people WHERE lastname = ?' durch eine String Variable ersetzen? Ich möchte das SQL Statement nämlich zur Laufzeit zusammenbauen und dann irgendwo abspeichern und danach auslesen (in einer String Variablen z.B.)
my $sth = $dbh->prepare('$string') oder so ähnlich. Geht das? Gibt es da unter Umständen Probleme (Performance, Sicherheit etc.)?
Ein blutiger Anfänger dankt Euch für Euren Expertenrat,
Gruß,
Tobias Weisserth
Der folgende Beitrag wurde am 20. 08. 2001, 12:36 Uhr von Matti Maekitalo veröffentlicht.
Hallo
> Kann ich 'SELECT * FROM people WHERE lastname = ?' durch eine String Variable ersetzen? Ich möchte das SQL Statement nämlich zur Laufzeit zusammenbauen und dann irgendwo abspeichern und danach auslesen (in einer String Variablen z.B.)
Ja.
> my $sth = $dbh->prepare('$string') oder so ähnlich. Geht das? Gibt es da unter Umständen Probleme (Performance, Sicherheit etc.)?
my $sth = $dbh->prepare($string);
ist richtig, dann gehts. In Gänsefußchen würde es auch ersetzt werden, in einfachen Hochkommas (') wird aber keine Varieblaninterpolation vorgenommen, so dass $string als String stehen bleibt.
Tschö Matti
Der folgende Beitrag wurde am 20. 08. 2001, 13:28 Uhr von Tobias Weisserth veröffentlicht.
Danke!
Gruß, Tobias
> Hallo
> > Kann ich 'SELECT * FROM people WHERE lastname = ?' durch eine String Variable ersetzen? Ich möchte das SQL Statement nämlich zur Laufzeit zusammenbauen und dann irgendwo abspeichern und danach auslesen (in einer String Variablen z.B.)
> Ja.
> > my $sth = $dbh->prepare('$string') oder so ähnlich. Geht das? Gibt es da unter Umständen Probleme (Performance, Sicherheit etc.)?
> my $sth = $dbh->prepare($string);
> ist richtig, dann gehts. In Gänsefußchen würde es auch ersetzt werden, in einfachen Hochkommas (') wird aber keine Varieblaninterpolation vorgenommen, so dass $string als String stehen bleibt.
> Tschö Matti
© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4