[gelöst] QT Sql prepare

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
mr.hide
User
Beiträge: 108
Registriert: Montag 29. August 2005, 14:02

Donnerstag 3. November 2005, 17:01

Hallo zusammen,

ich möchte gerne für bessere Performance die queries etwas aufbereiten.

hier mein code:

Code: Alles auswählen

print db

query = QSqlQuery(db)

print query.prepare( "Select :l, lot_id from table where rownum < 4" )
print query.bindValue( ":l", QVariant("lot_id"), QSql.ParameterType(3))


print query.execQuery()
print query.isActive()
print query.executedQuery ()

while query.next():
    print "erg:",query.value(0).toString()
und hier meine ausgabe:

Code: Alles auswählen

<qtsql.QSqlDatabase object at 0x009C8B70>
True
None
True
True
Select :l, lot_id from table where rownum < 4
erg: lot_id
erg: lot_id
erg: lot_id
Alles true normale queries gehen auch, nur würde ich halt gern das ergebnis und nicht den platzhalter kriegen.
Parametertyp ist auch gesetzt. Nur irgendwie klappt das net.

Seht ihr einen Fehler, bzw habt ihr nen Lösungsansatz.

mfg
Matthias
mr.hide
User
Beiträge: 108
Registriert: Montag 29. August 2005, 14:02

Montag 7. November 2005, 13:52

tja das problem war in meiner denkweise.

er setzt das dann so ein:

Code: Alles auswählen

select 'lot_id' from
richtig wäre es ohne '' also nicht als String


man kann es also nur in die where klausel einbinden

Code: Alles auswählen

where id = :d 
Antworten