pub struct PostgresAdapter {
pub url: String,
pub pool: Arc<Pool>,
pub mode: PostgresMode,
/* private fields */
}Fields§
§url: String§pool: Arc<Pool>§mode: PostgresModeImplementations§
Source§impl PostgresAdapter
impl PostgresAdapter
pub async fn direct(url: impl Into<String>) -> Result<Self>
pub async fn direct_with_pool( url: impl Into<String>, min_connections: usize, max_connections: usize, ) -> Result<Self>
pub async fn pgbouncer(url: impl Into<String>) -> Result<Self>
pub async fn query_count( &self, query: &str, params: &[DinocoValue], ) -> Result<i64>
pub async fn query_exists( &self, query: &str, params: &[DinocoValue], ) -> Result<bool>
pub async fn query_find_batch( &self, query: &str, params: &[DinocoValue], column_count: usize, ) -> Result<Vec<Vec<Value>>>
Trait Implementations§
Source§impl Clone for PostgresAdapter
impl Clone for PostgresAdapter
Source§impl DinocoAdapter for PostgresAdapter
impl DinocoAdapter for PostgresAdapter
fn new<'async_trait>(
url: String,
) -> Pin<Box<dyn Future<Output = Result<Self, String>> + Send + 'async_trait>>where
Self: 'async_trait,
fn query<'life0, 'life1, 'life2, 'async_trait, M>(
&'life0 self,
query: &'life1 str,
params: &'life2 [DinocoValue],
) -> Pin<Box<dyn Future<Output = Result<Vec<M>>> + Send + 'async_trait>>where
M: DinocoRowModel + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn query_optional<'life0, 'life1, 'life2, 'async_trait, M>(
&'life0 self,
query: &'life1 str,
params: &'life2 [DinocoValue],
) -> Pin<Box<dyn Future<Output = Result<Vec<M>>> + Send + 'async_trait>>where
M: DinocoRowModel + 'async_trait,
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn execute<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
query: &'life1 str,
params: &'life2 [DinocoValue],
) -> Pin<Box<dyn Future<Output = Result<usize>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§impl DinocoSqlCompiler for PostgresAdapter
impl DinocoSqlCompiler for PostgresAdapter
fn compile_find_query(&self, query: FindQuery) -> (String, Vec<DinocoValue>)
fn compile_insert_query(&self, query: InsertQuery) -> (String, Vec<DinocoValue>)
fn compile_update_query(&self, query: UpdateQuery) -> (String, Vec<DinocoValue>)
fn compile_delete_query(&self, query: DeleteQuery) -> (String, Vec<DinocoValue>)
fn compile_count_query(&self, query: CountQuery) -> (String, Vec<DinocoValue>)
fn compile_exists_query(&self, query: ExistsQuery) -> (String, Vec<DinocoValue>)
fn compile_find_batch_query( &self, query: FindBatchQuery, ) -> (String, Vec<DinocoValue>)
fn compile_relation_count_query( &self, query: RelationCountQuery, ) -> (String, Vec<DinocoValue>)
fn compile_relation_batch_query( &self, query: RelationBatchQuery, ) -> (String, Vec<DinocoValue>)
fn compile_relation_join_query( &self, query: RelationJoinQuery, ) -> (String, Vec<DinocoValue>)
fn compile_many_to_many_relation_query( &self, query: ManyToManyRelationQuery, ) -> (String, Vec<DinocoValue>)
fn compile_many_to_many_relation_count_query( &self, query: ManyToManyRelationCountQuery, ) -> (String, Vec<DinocoValue>)
fn compile_create_migrations_table(&self) -> String
fn compile_insert_migration_record(&self, name: &str) -> String
fn compile_create_table_migration( &self, migration: CreateTableMigration, ) -> String
fn compile_drop_table_migration(&self, migration: DropTableMigration) -> String
fn compile_rename_table_migration( &self, migration: RenameTableMigration, ) -> Vec<String>
fn compile_add_column_migration(&self, migration: AddColumnMigration) -> String
fn compile_drop_column_migration( &self, migration: DropColumnMigration, ) -> String
fn compile_alter_column_migration( &self, migration: AlterColumnMigration, ) -> Vec<String>
fn compile_rename_column_migration( &self, migration: RenameColumnMigration, ) -> Vec<String>
fn compile_add_foreign_key_migration( &self, migration: AddForeignKeyMigration, ) -> Vec<String>
fn compile_add_unvalidated_foreign_key_migration( &self, migration: AddForeignKeyMigration, ) -> Vec<String>
fn compile_drop_foreign_key_migration( &self, migration: DropForeignKeyMigration, ) -> Vec<String>
fn compile_create_index_migration( &self, migration: CreateIndexMigration, ) -> String
fn compile_drop_index_migration(&self, migration: DropIndexMigration) -> String
fn compile_create_enum_migration( &self, migration: CreateEnumMigration, ) -> Vec<String>
fn compile_drop_enum_migration( &self, migration: DropEnumMigration, ) -> Vec<String>
fn compile_alter_enum_migration( &self, migration: AlterEnumMigration, ) -> Vec<String>
Auto Trait Implementations§
impl !RefUnwindSafe for PostgresAdapter
impl !UnwindSafe for PostgresAdapter
impl Freeze for PostgresAdapter
impl Send for PostgresAdapter
impl Sync for PostgresAdapter
impl Unpin for PostgresAdapter
impl UnsafeUnpin for PostgresAdapter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more