2016-11-22 3 views
0

Ich versuche einige sqlite.swift-Anweisungen zu debuggen, die nicht die Ergebnisse liefern, die ich erwarte.Wie sqlite.swift Anweisung als SQL zu drucken?

Die Dokumentation zeigt Beispiele für SQL in Kommentaren.

for user in try db.prepare(users.select(id, email)) { 
    print("id: \(user[id]), email: \(user[email])") 
    // id: 1, email: [email protected] 
} 
// SELECT "id", "email" FROM "users" 

Wie erhalte ich die Aussage, dass SQL drucken?

print("\(users.select(id, email))") gibt mir keine SQL. Übersehe ich etwas in der Dokumentation?

+0

Ein kurzer Blick auf die Quelle zeigte, dass Statement-Objekte eine .description-Variable und QueryType eine Expression-Variable haben. Ich würde diese versuchen. Aber wenn Sie die Aussage posten, kann vielleicht jemand auch damit helfen. –

Antwort

2

Wenn Sie die SQL ausgeführt wird, um sehen wollen, dann drucken (query.asSQL())

let query = dbTable 
      .filter(dbSourceKey == Int64(minElement)) 
      .filter(dbTargetKey == Int64(maxElement)) 

print(query.asSQL())//Will show SQL statement