Your SlideShare is downloading. ×
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
SQL Server Views
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
527
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
34
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • CIS-282 Views 10/24/12
  • Transcript

    • 1. ViewsSimilar to an Access query Predefined SELECT statement At most basic level specifies which columns and rows to returnProvides a virtual table SELECT * FROM Customers represents rows and columns but isn’t for storing data
    • 2. Reasons for ViewsReduce database complexity‘Hide’ sensitive dataImprove query performance
    • 3. Reduce ComplexityProvide access to data from multiple tables Normalization doesn’t get in the wayLimit number of columns returned Instead of returning all columns just return ones commonly used
    • 4. Hiding DataProvide only columns that are appropriateProvide only rows that are appropriateCan have multiple views on one table with different fields and criteria for different user groupsCan also hide table and database organization
    • 5. Ease of UseCan provide access to current information List only students who are currently enrolled in a courseCan organize data for common reports List students with assignments for a section
    • 6. View OptionsEncryption prevents viewing the SQL statementSchema binding ties the view to objects it depends on Can’t drop a table – or column – that’s referenced in a bound viewCan sort results Requires use of TOP option Can also use ORDER BY in SELECT where view is used
    • 7. PerformanceBy default views run just as a query processed from command line Adds second step to execution:  select from view  execute view itselfCan add an index to speed execution
    • 8. Indexed ViewsSpeeds up execution of query, but has rules: View must be schema-bound View can’t reference other views (only tables & functions) Two-part names required, and must be same owner as view (dbo.Students)
    • 9. Indexed Views (cont.) View and source tables must be in same database Functions used must be deterministic ANSI_NULLS and QUOTED_IDENTIFIERS must be on when view and source tables created  ANSI_NULL – Set to on requires use of IS to compare to NULL  QUOTED_IDENTIFIERS – Set to on indicates that double quotes identify object names
    • 10. DeterministicAn indexed view must be deterministic Result of calculation is the same with same inputs DateAdd is deterministic GetDate is non-deterministic
    • 11. Places to Consider An IndexJoins and aggregations of large tablesRepeated patterns of queries (common WHERE clause)Repeated aggregations on the same or overlapping sets of columnsRepeated joins of the same tables on the same keys
    • 12. Indexes’ DownsideHave another list that must be maintained when data changesCan’t reference other viewsTables must be in same databaseCannot sort view in definition Can use ORDER BY when view referenced in SELECTUnique clustered index must be created before any other indexes can be created
    • 13. Updateable ViewsCan update base tables through a view.To have an updateable view, Can’t include a DISTINCT or TOP clause. Field list can’t include an aggregate function. Field list can’t include a calculated value. Can’t include a GROUP BY or HAVING clause. Can’t include the UNION operator.
    • 14. Updating rows using a viewUse the UPDATE statement to update a table through a view Use the view name in the UPDATE clause The view must be updatable (prior slide) The UPDATE statement can’t update data in more than one table.
    • 15. WITH CHECKIf WITH CHECK is used when the view is created, trying to change a row such that it wouldn’t be included in the view result will result in an error. If a view only returns rows where city = ‘Olympia’, and city is changed to ‘Lacey’ an error occurs

    ×