Created
August 24, 2015 12:53
-
-
Save ststeiger/3c4532443d9b596b5d0f to your computer and use it in GitHub Desktop.
Create check constraints for DateFrom/DateTo
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| SELECT | |
| --table_name | |
| --,column_name, | |
| --,' SELECT ''' + REPLACE(table_name, '''', '''''') + ''' AS tableName, * FROM ' + QUOTENAME(table_name) + ' WHERE ' + QUOTENAME(column_name) + ' > ' + REPLACE(QUOTENAME(column_name), 'Von', 'Bis') + '; ' AS cmd | |
| --, | |
| ' | |
| IF EXISTS (SELECT * FROM sys.check_constraints WHERE object_id = OBJECT_ID(N''dbo.CHK_' + table_name + '_' + column_name + '_LESSOREQUAL_' + REPLACE(column_name, 'Von', 'Bis') + ''') AND parent_object_id = OBJECT_ID(N''dbo.' + table_name + ''')) | |
| ALTER TABLE dbo.' + QUOTENAME(table_name) + ' DROP CONSTRAINT CHK_' + table_name + '_' + column_name + '_LESSOREQUAL_' + REPLACE(column_name, 'Von', 'Bis') + ' | |
| GO | |
| ALTER TABLE dbo.' + QUOTENAME(table_name) + ' WITH NOCHECK | |
| ADD CONSTRAINT CHK_' + table_name + '_' + column_name + '_LESSOREQUAL_' + REPLACE(column_name, 'Von', 'Bis') + ' CHECK ((' + column_name + ' <= ' + REPLACE(column_name, 'Von', 'Bis') + ' OR ' + REPLACE(column_name, 'DatumVon', 'Status') + ' <> (1) ) ) | |
| GO | |
| ALTER TABLE dbo.' + QUOTENAME(table_name) + ' CHECK CONSTRAINT CHK_' + table_name + '_' + column_name + '_LESSOREQUAL_' + REPLACE(column_name, 'Von', 'Bis') + ' | |
| GO | |
| ' AS cmd | |
| FROM INFORMATION_SCHEMA.COLUMNS | |
| WHERE TABLE_NAME LIKE 'T[_]%' | |
| AND | |
| ( | |
| COLUMN_NAME LIKE '%DatumVon' | |
| --OR COLUMN_NAME LIKE '%DatumBis' | |
| ) | |
| --AND table_name = 'T_AP_Anlage' | |
| -- ORDER BY TABLE_NAME |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment