I checked the answer given in this SO question , to drop constraints whose names are not known.
- In SQL Server, can we assume they will always be in the same format given? (FK__TABLENAME__KEYPREFIX)?
- What does T(c)define?
- If two such constraints need to be dropped from the same table, is the following correct?
DECLARE @sql1 NVARCHAR(MAX);
DECLARE @sql2 NVARCHAR(MAX);
SELECT 
    @sql1 = c
FROM
    (SELECT 
         'ALTER TABLE DOC_INVS_1 DROP CONSTRAINT ' + CONSTRAINT_NAME + '; '
     FROM 
         INFORMATION_SCHEMA.TABLE_CONSTRAINTS 
     WHERE 
         TABLE_NAME = 'DOC_INVS_1'
         AND CONSTRAINT_NAME LIKE 'FK__DOC_INVS___kntr%') T(c);
SELECT 
    @sql2 = c
FROM
    (SELECT 
         'ALTER TABLE DOC_INVS_1 DROP CONSTRAINT ' + CONSTRAINT_NAME + '; '
     FROM 
         INFORMATION_SCHEMA.TABLE_CONSTRAINTS 
     WHERE 
         TABLE_NAME = 'DOC_INVS_1'        
         AND CONSTRAINT_NAME LIKE 'FK__DOC_INVS___aaaa%') T(c);
EXEC(@sql1);
EXEC(@sql2);
Note
The actual end goal is to add a 'CASCADE ON DELETE' to a foreign key, which had been added to the wrong key. I learned that you can't just add the cascade option by altering, so the approach is to drop both and then create again.
 
    