I did a migration of Access to SQL Server and at first everything was fine, but then I scratched the surface and there were errors about zero length despite every one of the affected fields having allow zero length, hm?!
I ran the T-SQL query:
select 'Alter Table Drop CONSTRAINT '+Name from sys.check_constraints where name like '%disallow_zero_length%'
Which produced a lot of results, but the table reference was missing.
Result {
Alter Table Drop CONSTRAINT SSMA_CC$_gruppestoffer_kandidatlisten$navn_uk$disallow_zero_length
Alter Table Drop CONSTRAINT SSMA_CC$nyhedsbrevii_gruppe$ip_aktiveret$disallow_zero_length
Alter Table Drop CONSTRAINT SSMA_CC$_gruppestoffer_kandidatlisten$navn_de$disallow_zero_length
Alter Table Drop CONSTRAINT SSMA_CC$nyhedsbrevii_gruppe$ip_afmeldt$disallow_zero_length
Alter Table Drop CONSTRAINT SSMA_CC$_gruppestoffer_kandidatlisten$navn_se$disallow_zero_length
}
I copied the resulting queries and did a standard notepad replace of Table with Table $2 and did the rest here.
Result {
Alter Table $2 Drop CONSTRAINT SSMA_CC$_gruppestoffer_kandidatlisten$navn_uk$disallow_zero_length
Alter Table $2 Drop CONSTRAINT SSMA_CC$nyhedsbrevii_gruppe$ip_aktiveret$disallow_zero_length
Alter Table $2 Drop CONSTRAINT SSMA_CC$_gruppestoffer_kandidatlisten$navn_de$disallow_zero_length
Alter Table $2 Drop CONSTRAINT SSMA_CC$nyhedsbrevii_gruppe$ip_afmeldt$disallow_zero_length
Alter Table $2 Drop CONSTRAINT SSMA_CC$_gruppestoffer_kandidatlisten$navn_se$disallow_zero_length
}
My expression: "(Alter Table \$2 Drop Constraint SSMA_CC\$([^\$]+)\$([^\$]+)\$(disallow_zero_length))"
My Display: "$0;"
Enabled the Self-referring expression
And that's it.
I could also have written:
My Expression: "SSMA_CC\$([^\$]+)\$([^\$]+)\$(disallow_zero_length)"
My Display: "Alter Table $1 Drop CONSTRAINT SSMA_CC$$1$$2$$3;"