@@ -78,28 +78,23 @@ class TauriSqlConnection implements DatabaseConnection {
78
78
this . db = db
79
79
}
80
80
81
- async exec ( sql : string , param ?: readonly unknown [ ] ) {
82
- const { lastInsertId, rowsAffected } = await this . db . execute ( sql , param as any )
83
- return {
84
- numAffectedRows : BigInt ( rowsAffected ) ,
85
- insertId : BigInt ( lastInsertId ) ,
86
- }
87
- }
88
-
89
81
streamQuery < R > ( ) : AsyncIterableIterator < QueryResult < R > > {
90
82
throw new Error ( 'Tauri sql plugin doesn\'t support streaming' )
91
83
}
92
84
93
- async executeQuery < R > ( compiledQuery : CompiledQuery < unknown > ) : Promise < QueryResult < R > > {
94
- const { parameters, sql, query } = compiledQuery
95
- return Promise . resolve ( ( query . kind === 'SelectQueryNode' || query . kind === 'RawNode' )
96
- ? {
97
- rows : await this . db . select ( sql , parameters as any ) ,
98
- }
99
- : {
85
+ async executeQuery < R > ( { parameters, query, sql } : CompiledQuery < unknown > ) : Promise < QueryResult < R > > {
86
+ switch ( query . kind ) {
87
+ case 'SelectQueryNode' :
88
+ case 'RawNode' :
89
+ return { rows : await this . db . select < any > ( sql , parameters ) }
90
+ default : {
91
+ const { lastInsertId, rowsAffected } = await this . db . execute ( sql , parameters )
92
+ return {
100
93
rows : [ ] ,
101
- ...await this . exec ( sql , parameters ) ,
102
- } ,
103
- )
94
+ insertId : BigInt ( lastInsertId ) ,
95
+ numAffectedRows : BigInt ( rowsAffected ) ,
96
+ }
97
+ }
98
+ }
104
99
}
105
100
}
0 commit comments