What are the restrictions applicable while creating views?Views can be created referencing tables and views only in the current database.
A view name must not be the same as any table owned by that user.
You can build views on other views and on procedures that reference views.
Rules or DEFAULT definitions can't be associated with views.
Only INSTEAD OF triggers can be associated with views.
The query that defines the view cannot include the ORDER BY, COMPUTE, or COMPUTE BY clauses or the INTO keyword.
You cannot define full-text index definitions for views.
You cannot create temporary views
You cannot create views on temporary tables.
What are the restrictions that views have to follow?- Since a view is a virtual table – columns of the view cannot be renamed. To change anything in the view, the view must be dropped and create again.
- The select statement on the view cannot contain ORDER BY or INTO TEMP
- When a table or view is dropped, any views in the same database are also dropped.
- It is not possible to create an index on a view
- It is not possible to use DELETE to update a view that is defined as a join.
What are the restrictions applicable while creating views?Restrictions applicable while creating views:
- A view cannot be indexed.
- A view cannot be Altered or renamed. Its columns cannot be renamed.
- To alter a view, it must be dropped and re-created.
- ANSI_NULLS and QUOTED_IDENTIFIER options should be turned on to create a view.
- All tables referenced in a view must be part of the same database.
- Any user defined functions referenced in a view must be created with SCHEMABINDING option.
- Cannot use ROWSET, UNION, TOP, ORDER BY, DISTINCT, COUNT(*), COMPUTE, COMPUTE BY in views.