Validation Criteria for SQL Server Models

The Check Model/Validate SQL option allows you to reduce occurrences of syntax errors during forward engineering. For SQL Server physical models, the following objects and properties are validated during the Check Model process:

Aggregate
  • All scalar data types can be used as a parameter for a user-defined aggregate, except text, ntext, and image.
Check Constraint
  • Check constraints cannot be defined on text, ntext, or image columns.
Fulltext Index Column
  • Columns for a fulltext index must be of type char, varchar, nchar, nvarchar, text, ntext, image, XML, or varbinary.
  • A column type of char, nchar, varchar, or nvarchar must be specified, if the columns are of type varbinary(max) or image.
Functions
  • All data types for Transact-SQL functions, including CLR user-defined types are allowed except the timestamp data type. For CLR functions, all data types, including CLR user-defined types are allowed except text, ntext, image, and timestamp data types.
XML Indexes
  • The clustering key of the user table is limited to 15 columns for an XML Index.
  • An XML index can not be created on a non-XML column.
  • A primary XML index exists if there are multiple XML indexes on a column.
Indexes
  • The index must be created or rebuilt offline if any one of the specified nonkey columns are varchar(max), nvarchar(max), or varbinary(max) datatypes.
Partition Functions
  • All data types are valid for use as partitioning columns, except text, ntext, image, XML, timestamp, varchar(max), nvarchar(max), alias data types, or CLR user-defined data types.
Stored Procedures
  • For CLR stored procedures, char, varchar, text, ntext, image, cursor, and table cannot be specified as parameters.
Tables
  • Each table can have up to 249 non-clustered indexes.
  • collation_name is applicable only for columns of the char, varchar, text, nchar, nvarchar, and next data types.
Views
  • A view can have a maximum of 1,024 columns.

More information:

Check Your Model/Validate SQL

Model Validation Check