pub trait DatabaseConnection: Send + Sync {
// Required methods
fn execute_query(
&mut self,
query: &str,
) -> Result<Vec<DatabaseRow>, DatabaseError>;
fn get_table_names(&mut self) -> Result<Vec<String>, DatabaseError>;
fn get_column_names(
&mut self,
table_name: &str,
) -> Result<Vec<String>, DatabaseError>;
fn count_rows(&mut self, table_name: &str) -> Result<usize, DatabaseError>;
fn close(&mut self) -> Result<(), DatabaseError>;
}Expand description
Trait for database connections
Required Methods§
Sourcefn execute_query(
&mut self,
query: &str,
) -> Result<Vec<DatabaseRow>, DatabaseError>
fn execute_query( &mut self, query: &str, ) -> Result<Vec<DatabaseRow>, DatabaseError>
Execute a query and return the results
Sourcefn get_table_names(&mut self) -> Result<Vec<String>, DatabaseError>
fn get_table_names(&mut self) -> Result<Vec<String>, DatabaseError>
Get table names
Sourcefn get_column_names(
&mut self,
table_name: &str,
) -> Result<Vec<String>, DatabaseError>
fn get_column_names( &mut self, table_name: &str, ) -> Result<Vec<String>, DatabaseError>
Get column names for a table
Sourcefn count_rows(&mut self, table_name: &str) -> Result<usize, DatabaseError>
fn count_rows(&mut self, table_name: &str) -> Result<usize, DatabaseError>
Count rows in a table
Sourcefn close(&mut self) -> Result<(), DatabaseError>
fn close(&mut self) -> Result<(), DatabaseError>
Close the connection