@@ -14,7 +14,7 @@ use crate::{
1414
1515#[ allow( clippy:: module_name_repetitions) ]
1616pub enum PsqlpyConnection {
17- PoolConn ( Object , Pool , bool ) ,
17+ PoolConn ( Object , bool ) ,
1818 SingleConn ( Client ) ,
1919}
2020
@@ -25,13 +25,14 @@ impl PsqlpyConnection {
2525 /// May return Err if cannot prepare statement.
2626 pub async fn prepare ( & self , query : & str , prepared : bool ) -> PSQLPyResult < Statement > {
2727 match self {
28- PsqlpyConnection :: PoolConn ( pconn, _, _ ) => {
28+ PsqlpyConnection :: PoolConn ( pconn, _) => {
2929 if prepared {
3030 return Ok ( pconn. prepare_cached ( query) . await ?) ;
3131 } else {
32- println ! ( "999999" ) ;
32+ pconn . batch_execute ( "BEGIN" ) . await ? ;
3333 let prepared = pconn. prepare ( query) . await ?;
3434 self . drop_prepared ( & prepared) . await ?;
35+ pconn. batch_execute ( "COMMIT" ) . await ?;
3536 return Ok ( prepared) ;
3637 }
3738 }
@@ -46,8 +47,9 @@ impl PsqlpyConnection {
4647 pub async fn drop_prepared ( & self , stmt : & Statement ) -> PSQLPyResult < ( ) > {
4748 let deallocate_query = format ! ( "DEALLOCATE PREPARE {}" , stmt. name( ) ) ;
4849 match self {
49- PsqlpyConnection :: PoolConn ( pconn, _, _) => {
50- return Ok ( pconn. batch_execute ( & deallocate_query) . await ?)
50+ PsqlpyConnection :: PoolConn ( pconn, _) => {
51+ let res = Ok ( pconn. batch_execute ( & deallocate_query) . await ?) ;
52+ res
5153 }
5254 PsqlpyConnection :: SingleConn ( sconn) => {
5355 return Ok ( sconn. batch_execute ( & deallocate_query) . await ?)
@@ -68,7 +70,7 @@ impl PsqlpyConnection {
6870 T : ?Sized + ToStatement ,
6971 {
7072 match self {
71- PsqlpyConnection :: PoolConn ( pconn, _, _ ) => {
73+ PsqlpyConnection :: PoolConn ( pconn, _) => {
7274 return Ok ( pconn. query ( statement, params) . await ?)
7375 }
7476 PsqlpyConnection :: SingleConn ( sconn) => {
@@ -87,7 +89,7 @@ impl PsqlpyConnection {
8789 params : & [ ( & ( dyn ToSql + Sync ) , Type ) ] ,
8890 ) -> PSQLPyResult < Vec < Row > > {
8991 match self {
90- PsqlpyConnection :: PoolConn ( pconn, _, _ ) => {
92+ PsqlpyConnection :: PoolConn ( pconn, _) => {
9193 return Ok ( pconn. query_typed ( statement, params) . await ?)
9294 }
9395 PsqlpyConnection :: SingleConn ( sconn) => {
@@ -102,9 +104,7 @@ impl PsqlpyConnection {
102104 /// May return Err if cannot execute statement.
103105 pub async fn batch_execute ( & self , query : & str ) -> PSQLPyResult < ( ) > {
104106 match self {
105- PsqlpyConnection :: PoolConn ( pconn, _, _) => {
106- return Ok ( pconn. batch_execute ( query) . await ?)
107- }
107+ PsqlpyConnection :: PoolConn ( pconn, _) => return Ok ( pconn. batch_execute ( query) . await ?) ,
108108 PsqlpyConnection :: SingleConn ( sconn) => return Ok ( sconn. batch_execute ( query) . await ?) ,
109109 }
110110 }
@@ -119,7 +119,7 @@ impl PsqlpyConnection {
119119 U : Buf + ' static + Send ,
120120 {
121121 match self {
122- PsqlpyConnection :: PoolConn ( pconn, _, _ ) => return Ok ( pconn. copy_in ( statement) . await ?) ,
122+ PsqlpyConnection :: PoolConn ( pconn, _) => return Ok ( pconn. copy_in ( statement) . await ?) ,
123123 PsqlpyConnection :: SingleConn ( sconn) => return Ok ( sconn. copy_in ( statement) . await ?) ,
124124 }
125125 }
@@ -137,7 +137,7 @@ impl PsqlpyConnection {
137137 T : ?Sized + ToStatement ,
138138 {
139139 match self {
140- PsqlpyConnection :: PoolConn ( pconn, _, _ ) => {
140+ PsqlpyConnection :: PoolConn ( pconn, _) => {
141141 return Ok ( pconn. query_one ( statement, params) . await ?)
142142 }
143143 PsqlpyConnection :: SingleConn ( sconn) => {
@@ -202,8 +202,14 @@ impl PsqlpyConnection {
202202 "Cannot prepare statement, error - {err}"
203203 ) )
204204 } ) ?,
205+ // false => {
206+ // self
207+ // .query_typed(statement.raw_query(), &statement.params_typed())
208+ // .await
209+ // .map_err(|err| RustPSQLDriverError::ConnectionExecuteError(format!("{err}")))?
210+ // },
205211 false => self
206- . query_typed ( statement . raw_query ( ) , & statement . params_typed ( ) )
212+ . query_typed ( "SELECT * FROM users" , & [ ] )
207213 . await
208214 . map_err ( |err| RustPSQLDriverError :: ConnectionExecuteError ( format ! ( "{err}" ) ) ) ?,
209215 } ;
0 commit comments