public function getListTableForeignKeysSQL($table, $database = null)
{
return "SELECT f.name AS ForeignKey,\n SCHEMA_NAME (f.SCHEMA_ID) AS SchemaName,\n OBJECT_NAME (f.parent_object_id) AS TableName,\n COL_NAME (fc.parent_object_id,fc.parent_column_id) AS ColumnName,\n SCHEMA_NAME (o.SCHEMA_ID) ReferenceSchemaName,\n OBJECT_NAME (f.referenced_object_id) AS ReferenceTableName,\n COL_NAME(fc.referenced_object_id,fc.referenced_column_id) AS ReferenceColumnName,\n f.delete_referential_action_desc,\n f.update_referential_action_desc\n FROM sys.foreign_keys AS f\n INNER JOIN sys.foreign_key_columns AS fc\n INNER JOIN sys.objects AS o ON o.OBJECT_ID = fc.referenced_object_id\n ON f.OBJECT_ID = fc.constraint_object_id\n WHERE " . $this->getTableWhereClause($table, 'SCHEMA_NAME (f.schema_id)', 'OBJECT_NAME (f.parent_object_id)');
}