I am evaluating software systems which configure products that tout constraint based versus rules based engines. Can someone explain (with maybe an example or two) to a non-expert what the difference is? My guess is that a constraint based engine is rules defining relationships between objects, and rules based engines are more like the WHERE clause of a SQL language query.
Constraints will basically allow you to enforce data integrity - limiting the values that may be inserted into a column and there by enforcing business rules. The database engine (SQL Server) will automatically enforce integrity of a database based on the constraints defined e.g. NOT NULL, CHECK constraints, UNIQUE constraints, PRIMARY KEY constraints, FOREIGN KEY Constraints, etc.
For Rule Engine,
I will just point you to some Microsoft articles and other useful links (as I am not a pro in this area).