pub trait ForeignKeyDefinitionCatalog {
// Required methods
fn resolve_table_reference(&self, name: &str) -> Result<String, SQLError>;
fn bound_table_name(&self, name: &str) -> Result<Option<String>, SQLError>;
fn referenceable_keys(
&self,
table: &str,
) -> Result<Vec<TableKeyConstraint>, ColumnCatalogError>;
fn ensure_reference_privilege(
&self,
table: &str,
column: &str,
) -> Result<(), SQLError>;
}Expand description
Namespace, key declarations, and REFERENCES checks for one foreign-key declaration.
Required Methods§
fn resolve_table_reference(&self, name: &str) -> Result<String, SQLError>
fn bound_table_name(&self, name: &str) -> Result<Option<String>, SQLError>
fn referenceable_keys( &self, table: &str, ) -> Result<Vec<TableKeyConstraint>, ColumnCatalogError>
fn ensure_reference_privilege( &self, table: &str, column: &str, ) -> Result<(), SQLError>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".