Vraag : laat vallen alle indexen

wanneer ik het manuscript ertoe breng om alle indexen te verwijderen, nog ontbreekt het wegens de beperkingen van FK. hoe u de onderstaande code zult wijzigen voor alle indexen en om het even welke beperkingen blokkerend het aan te passen?

thanks
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
SELECT
COMPUTER-AIDED SOFTWARE ENGINEERING  
    WANNEER (is_primary_key =1 of is_unique = 1)
    DAN „VERANDER LIJST [„+SCHEMA_NAME (O.UID) +“]. [„+O.NAME+“] LAAT VALLEN BEPERKING [„+I.NAME+“]“
    „LAAT VALLEN ANDERS INDEX [“ +I.NAME + '] OP [„+SCHEMA_NAME (O.UID) +“]. [„+i.name+“] '
    EIND 
VAN sys.indexes sluit aan ik me sysobjects bij o
OP i.object_id=o.id en i.object_id>99 en i.type_desc<>'HEAP en o.type = ' U

Antwoord : laat vallen alle indexen

Het probleem is niet zo veel met dalingsindex; het probleem is met dalings (primaire zeer belangrijke/unieke sleutel) beperking.  U kunt niet zulk een beperking laten vallen als er een beperking van FK afhankelijk van het is.

Wanneer het laten vallen van ALLE indexen, is het vrij ongecompliceerd om AL beperking van FK te laten vallen alvorens OM HET EVEN WELKE PK of Britse beperkingen te laten vallen.

Wanneer het laten vallen van alle indexen voor één enkele lijst, dan hebt u een curseur of een recursieve CTE nodig om al fk's te laten vallen die die lijst alvorens om het even welke PK of Britse beperkingen van verwijzingen voorzien te laten vallen.

Wanneer het laten vallen van één enkele index, dan hebt u een curseur of een recursieve CTE nodig om al fk's te laten vallen die van die index alvorens om het even welke PK of Britse beperkingen te laten vallen afhangen.

 

Andere oplossingen  
 
programming4us programming4us