'MSSQL does not support cascading FKs when dropping tables, we need to implement.'

def _find_referencing_fks(self, table_name):

    sql = '\n                                SELECT    FKTU.TABLE_SCHEMA    as    REFING_TABLE_SCHEMA,\n                                                            FKTU.TABLE_NAME    as    REFING_TABLE_NAME,\n                                                            FK.[CONSTRAINT_NAME]    as    FK_NAME\n                                FROM    [INFORMATION_SCHEMA].[REFERENTIAL_CONSTRAINTS]    FK\n                                JOIN    [INFORMATION_SCHEMA].[CONSTRAINT_TABLE_USAGE]    UCTU\n                                        ON    FK.UNIQUE_CONSTRAINT_CATALOG    =    UCTU.CONSTRAINT_CATALOG    and\n                                                    FK.UNIQUE_CONSTRAINT_NAME    =    UCTU.CONSTRAINT_NAME    and\n                                                    FK.UNIQUE_CONSTRAINT_SCHEMA    =    UCTU.CONSTRAINT_SCHEMA\n                                JOIN    [INFORMATION_SCHEMA].[CONSTRAINT_TABLE_USAGE]    FKTU\n                                        ON    FK.CONSTRAINT_CATALOG    =    FKTU.CONSTRAINT_CATALOG    and\n                                                    FK.CONSTRAINT_NAME    =    FKTU.CONSTRAINT_NAME    and\n                                                    FK.CONSTRAINT_SCHEMA    =    FKTU.CONSTRAINT_SCHEMA\n                                WHERE    FK.CONSTRAINT_CATALOG    =    %s\n                                        AND    UCTU.TABLE_SCHEMA    =    %s    --    REFD_TABLE_SCHEMA\n                                        AND    UCTU.TABLE_NAME    =    %s    --    REFD_TABLE_NAME\n                                '
    db_name = self._get_setting('name')
    schema_name = self._get_schema_name()
    return self.execute(sql, [db_name, schema_name, table_name])
