# Frage zu Prepared Statement



## firestone (28. Apr 2010)

Hallo zusammen,

ich habe eine Frage zu Prepared Statements und zwar habe ich ein Statement was wie folgt aussieht



```
DELETE FROM  BIBL.TABELLENNAME WHERE   SPALTE1 =  ?
```

Nun möchte ich die BIBL ebenfalls Variable machen kann ich das Statement dann wie folgt schreiben 

```
DELETE FROM ?.TABELLENNAME WHERE   SPALTE1 =  ?
```

Oder funktionieren die Platzhalter nur in der WHERE Klausel ?

Lg Fireli


----------



## The_S (28. Apr 2010)

Das geht mit PreparedStatements nicht. Müsstest du vorher im String als Platzhalter anlegen und dann auch im String ersetzen.


----------



## Gast2 (28. Apr 2010)

firestone hat gesagt.:


> Oder funktionieren die Platzhalter nur in der WHERE Klausel ?



Um genau zu sein sind die '?' Bindvariablen (in der Oracle Terminilogie), d.h. auch in der WHERE Clause kannst du die nicht wahlfrei einsetzen für alle Strings die irgendwie ersetzt werden sollen. Z.B. kannst du natürlich keine Operatoren oder Objektnamen wie Spaltennamen damit ersetzen.


----------

