Schrift
[thread]3611[/thread]

MySQL-Abfrage mit Platzhalter: DBI



<< >> 6 Einträge, 1 Seite
MartinR
 2005-09-05 21:12
#33496 #33496
User since
2004-06-17
305 Artikel
BenutzerIn
[default_avatar]
Hi,

ich kann ja eine SQL-Abfrage z.B. so gestalten:

Code: (dl )
1
2
3
$sql = "select * from tabelle where feld = ?";
$sth = $dbh->prepare($sql);
$sth->execute('test');


Wie muss die Platzhalter-Syntax aber aussehen, wenn ich folgende SQL-Statement verwenden will?

select * from tabelle where feld LIKE "%test%"

Also die Abfrage mit LIKE und danach trotzdem das Fragezeichen als Platzhalter?

Probiert mit ... LIKE %?% ... - aber das funzt nicht.

Danke schon mal

cu\n\n

<!--EDIT|MartinR|1125940395-->
GwenDragon
 2005-09-05 22:34
#33497 #33497
User since
2005-01-17
14748 Artikel
Admin1
[Homepage]
user image
[quote=MartinR,05.09.2005, 19:12]select * from tabelle where feld LIKE "%test%"

Also die Abfrage mit LIKE und danach trotzdem das Fragezeichen als Platzhalter?

Probiert mit ... LIKE %?% ... - aber das funzt nicht.[/quote]
Code: (dl )
1
2
3
$sql = 'select * from tabelle where feld like ?';
$sth = $dbh->prepare($sql);
$sth->execute('%test%');
\n\n

<!--EDIT|GwenDragon|1125947059-->
MartinR
 2005-09-09 08:54
#33498 #33498
User since
2004-06-17
305 Artikel
BenutzerIn
[default_avatar]
[quote=GwenDragon,05.09.2005, 20:34][quote=MartinR,05.09.2005, 19:12]$sth->execute('%test%');
[/code][/quote]
HI,

danke - das Leben kann so einfach sein.

Nachfrage: Kann/darf man die Platzhalter eigentlich überall im SQL-Statement verwenden? Also z.B. auch hinter LIMIT

select * from tabelle where feld = ? LIMIT ?, ?

Bei mir gings leider nicht ...
renee
 2005-09-09 13:12
#33499 #33499
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Was kam denn fuer eine Fehlermeldung??
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
pq
 2005-09-09 14:57
#33500 #33500
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=MartinR,09.09.2005, 06:54]Nachfrage: Kann/darf man die Platzhalter eigentlich überall im SQL-Statement verwenden? Also z.B. auch hinter LIMIT[/quote]
nein, LIMIT oder tabellennamen funktionieren nicht mit platzhaltern.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
MartinR
 2005-09-09 19:55
#33501 #33501
User since
2004-06-17
305 Artikel
BenutzerIn
[default_avatar]
Danke schöööön ...
<< >> 6 Einträge, 1 Seite



View all threads created 2005-09-05 21:12.