@@ -3,6 +3,7 @@ use crate::cancel_query;
33use crate :: codec:: BackendMessages ;
44use crate :: config:: { Host , SslMode } ;
55use crate :: connection:: { Request , RequestMessages } ;
6+ use crate :: simple_query:: SimpleQueryStream ;
67use crate :: copy_out:: CopyStream ;
78use crate :: query:: RowStream ;
89use crate :: slice_iter;
@@ -20,7 +21,7 @@ use crate::{Error, Statement};
2021use bytes:: IntoBuf ;
2122use fallible_iterator:: FallibleIterator ;
2223use futures:: channel:: mpsc;
23- use futures:: { future, Stream , TryStream , TryStreamExt } ;
24+ use futures:: { future, TryStream , TryStreamExt } ;
2425use futures:: { ready, StreamExt } ;
2526use parking_lot:: Mutex ;
2627use postgres_protocol:: message:: backend:: Message ;
@@ -320,11 +321,15 @@ impl Client {
320321 /// Prepared statements should be use for any query which contains user-specified data, as they provided the
321322 /// functionality to safely embed that data in the request. Do not form statements via string concatenation and pass
322323 /// them to this method!
323- pub fn simple_query < ' a > (
324- & ' a self ,
325- query : & ' a str ,
326- ) -> impl Stream < Item = Result < SimpleQueryMessage , Error > > + ' a {
327- simple_query:: simple_query ( self . inner ( ) , query)
324+ pub async fn simple_query (
325+ & self ,
326+ query : & str ,
327+ ) -> Result < Vec < SimpleQueryMessage > , Error > {
328+ self . simple_query_raw ( query) . await ?. try_collect ( ) . await
329+ }
330+
331+ pub ( crate ) async fn simple_query_raw ( & self , query : & str ) -> Result < SimpleQueryStream , Error > {
332+ simple_query:: simple_query ( self . inner ( ) , query) . await
328333 }
329334
330335 /// Executes a sequence of SQL statements using the simple query protocol.
0 commit comments