tag:blogger.com,1999:blog-47000538664980837942024-03-19T17:23:42.122+05:30DotNet Brother - .Net Online Training A tour of Microsoft Technology with Pankaj TiwariPankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.comBlogger105125tag:blogger.com,1999:blog-4700053866498083794.post-88162502506379228862015-05-04T00:44:00.002+05:302015-05-04T00:44:56.086+05:30SQL Server Shortcut Keys Enlisted <div dir="ltr" style="text-align: left;" trbidi="on">
<table border="0" cellpadding="0" class="MsoNormalTable" id="Table1" style="font-family: Verdana;"><tbody>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Bookmarks: Clear all bookmarks.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL-SHIFT-F2<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Bookmarks: Insert or remove a bookmark (toggle).<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+F2<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Bookmarks: Move to next bookmark.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">F2<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Bookmarks: Move to previous bookmark.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">SHIFT+F2<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Cancel a query.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">ALT+BREAK<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Connections: Connect.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+O<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Connections: Disconnect.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+F4<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Connections: Disconnect and close child window.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+F4<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Database object information.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">ALT+F1<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Clear the active Editor pane.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+ <st1:state w:st="on"><st1:place w:st="on">DEL</st1:place></st1:state><o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Comment out code.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+C<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Copy. You can also use CTRL+INSERT.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+C<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Cut. You can also use SHIFT+DEL.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+X<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Decrease indent.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">SHIFT+TAB<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Delete through the end of a line in the Editor pane.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+DEL<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Find.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+F<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Go to a line number.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+G<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Increase indent.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">TAB<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Make selection lowercase.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+L<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Make selection uppercase.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+U<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Paste. You can also use SHIFT+INSERT.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+V<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Remove comments.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+R<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Repeat last search or find next.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">F3<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Replace.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+H<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Select all.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+A<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Editing: Undo.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+Z<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Execute a query. You can also use CTRL+E<b> </b>(for backward compatibility).<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">F5<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Help for SQL Query Analyzer.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">F1<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Help for the selected Transact-SQL statement.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">SHIFT+F1<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Navigation: Switch between query and result panes.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">F6<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Navigation: Switch panes.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">Shift+F6<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Navigation: Window Selector.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+W<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">New Query window.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+N<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Object Browser (show/hide).<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">F8<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Object Search.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">F4<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Parse the query and check syntax.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+F5<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Print.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+P<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Results: Display results in grid format.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+D<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Results: Display results in text format.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+T<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Results: Move the splitter.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+B<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Results: Save results to file.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+F<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Results: Show Results pane (toggle).<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+R<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Save.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+S<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Templates: Insert a template.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+INSERT<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Templates: Replace template parameters.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+M<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Tuning: Display estimated execution plan.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+L<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Tuning: Display execution plan (toggle ON/OFF).<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+K<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Tuning: Index Tuning Wizard.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+I<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Tuning: Show client statistics<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+S<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Tuning: Show server trace.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+SHIFT+T<o:p></o:p></span></strong></div>
</td></tr>
<tr><td style="padding: 0.75pt; width: 488px;" valign="top" width="72%"><div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Use database.<o:p></o:p></span></div>
</td><td style="padding: 0.75pt; width: 188px;" valign="top" width="28%"><div class="MsoNormal">
<strong><span style="font-family: Verdana, sans-serif;">CTRL+U</span></strong></div>
</td></tr>
</tbody></table>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com274tag:blogger.com,1999:blog-4700053866498083794.post-57530159022415887662015-04-02T01:52:00.007+05:302015-04-02T01:53:44.507+05:30SQL Server:: Log Shipping and Replication <div dir="ltr" style="text-align: left;" trbidi="on">
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Log shipping involves two copies of a single database that typically reside on different computers. At any given time, only one copy of the database is currently available to clients. This copy is known as the primary database. Updates made by clients to the primary database are propagated by means of log shipping to the other copy of the database, known as the secondary database. Log shipping involves applying the transaction log from every insertion, update, or deletion made on the primary database onto the secondary database.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Log shipping can be used in conjunction with replication, with the following behavior:</span></div>
<ul style="line-height: 17.5499992370605px;">
<li style="list-style-image: none;"><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Replication does not continue after a log shipping failover. If a failover occurs, replication agents do not connect to the secondary, so transactions are not replicated to Subscribers. If a failback to the primary occurs, replication resumes. All transactions that log shipping copies from the secondary back to the primary are replicated to Subscribers.</span></div>
</li>
<li style="list-style-image: none;"><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If the primary is permanently lost, the secondary can be renamed so that replication can continue. The remainder of this topic describes the requirements and procedures for handling this case. The example given is the publication database, which is the most common database to log ship, but a similar process can also be applied to subscription and distribution databases.</span></div>
</li>
</ul>
<div>
<span style="font-family: Verdana, sans-serif;"><span style="line-height: 18px;"><span style="color: red;">Note</span><span style="color: #2a2a2a;">:- </span></span><span style="color: #2a2a2a; line-height: 18px;">We recommend using database mirroring, rather than log shipping, to provide availability for the publication database.</span></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><span style="color: #2a2a2a; line-height: 18px;"><br /></span></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><span style="color: #2a2a2a; line-height: 18px;"><br /></span></span></div>
<div>
<h2 class="LW_CollapsibleArea_TitleDiv" style="font-weight: normal; line-height: 17.5499992370605px; margin: 9px 0px 19px; padding: 0px;">
<span class="LW_CollapsibleArea_Title" style="display: block;"><span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">Requirements and Procedures for Replicating from the Secondary If the Primary Is Lost</span></span><div class="LW_CollapsibleArea_HrDiv" style="font-family: 'Segoe UI Semibold', 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; padding-top: 0px;">
</div>
</h2>
<div class="sectionblock" style="padding-bottom: 20px; padding-left: 15px;">
<span style="font-family: Verdana, sans-serif; line-height: 17.5499992370605px;"><a href="https://www.blogger.com/null" id="sectionToggle0" style="color: #1364c4;"></a></span><br />
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Be aware of the following requirements and considerations:</span></div>
<ul style="line-height: 17.5499992370605px;">
<li style="list-style-image: none;"><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If a primary contains more than one publication database, log ship all of the publication databases to the same secondary.</span></div>
</li>
<li style="list-style-image: none;"><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">The installation path for the secondary server instance must be the same as the primary. User database locations on the secondary server must be the same as on the primary.</span></div>
</li>
<li style="list-style-image: none;"><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Back up the service master key at the primary. This key will be restored at the secondary. For more information.</span></div>
</li>
<li style="list-style-image: none;"><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Log shipping does not guarantee against data loss. A failure on the primary database can result in the loss of data that has not yet been backed up or for backups that are lost during the failure.</span></div>
</li>
</ul>
<div>
<h3 class="subHeading" style="font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">Log Shipping with Transactional Replication</span></h3>
<div class="subsection" style="line-height: 17.5499992370605px;">
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For transactional replication, the behavior of log shipping depends on the <strong>sync with backup</strong> option. This option can be set on the publication database and distribution database; in log shipping for the Publisher, only the setting on the publication database is relevant.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Setting this option on the publication database ensures that transactions are not delivered to the distribution database until they are backed up at the publication database. The last publication database backup can then be restored at the secondary server without any possibility of the distribution database having transactions that the restored publication database does not have. This option guarantees that if the Publisher fails over to a secondary server, consistency is maintained between the Publisher, Distributor, and Subscribers. Latency and throughput are affected because transactions cannot be delivered to the distribution database until they have been backed up at the Publisher; if your application can tolerate this latency, we recommend that you set this option on the publication database. If the <strong>sync with backup</strong> option is not set, Subscribers might receive changes that are no longer included in the recovered database at the secondary server. </span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span class="label" style="font-weight: 700;"><span style="font-family: Verdana, sans-serif;">To configure transactional replication and log shipping with the sync with backup option</span></span></div>
<ol>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If the sync with backup option is not set on the publication database, execute <span class="code" style="color: darkgreen;">sp_replicationdboption '<publicationdatabasename>', 'sync with backup', 'true'</span>. For more information.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Configure log shipping for the publication database.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If the Publisher fails, restore the last log of the database to the secondary server, using the KEEP_REPLICATION option of RESTORE LOG. This retains all replication settings for the database. For more information.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Restore the <strong>msdb</strong> database and <strong>master</strong> databases from the primary to the secondary. For more information, If the primary was also a Distributor, restore the distribution database from the primary to the secondary.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">These databases must be consistent with the publication database at the primary in terms of replication configuration and settings.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">At the secondary server, rename the computer and then rename the SQL Server instance to match the primary server name. For information about renaming the computer, see the Windows documentation. For information about renaming the server.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">At the secondary server, restore the service master key that was backed up from the primary. </span></div>
</li>
</ol>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span class="label" style="font-weight: 700;"><span style="font-family: Verdana, sans-serif;">To configure transactional replication and log shipping without the sync with backup option</span></span></div>
<ol>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Configure log shipping for the publication database. For more information.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If the Publisher fails, restore the last log of the database to the secondary server, using the KEEP_REPLICATION option of RESTORE LOG. This retains all replication settings for the database. </span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Restore the <strong>msdb</strong> database and <strong>master</strong> databases from the primary to the secondary. If the primary was also a Distributor, restore the distribution database from the primary to the secondary.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">These databases must be consistent with the publication database at the primary in terms of replication configuration and settings.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">At the secondary server, rename the computer and then rename the SQL Server instance to match the primary server name. For information about renaming the computer, see the Windows documentation. For information about renaming the server.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">You might receive an error message from the Log Reader Agent that the publication database and the distribution database are not synchronized.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">At the secondary server, restore the service master key that was backed up from the primary. </span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Execute <strong>sp_replrestart</strong>. This stored procedure can be used to force the Log Reader Agent to ignore all the previous replicated transactions in the publication database log. Transactions applied after the completion of the stored procedure are processed by the Log Reader Agent. </span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Restart the Log Reader Agent after the stored procedure executes successfully. </span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Transactions that have already been distributed to Subscriber might be applied at the Publisher. To ensure that the Distribution Agent does not fail with an error when attempting to reapply these transactions at a Subscriber, specify the agent profile titled <strong>Continue On Data Consistency Errors</strong>.</span></div>
</li>
</ol>
</div>
<h3 class="subHeading" style="font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">Log Shipping with Merge Replication</span></h3>
<div class="subsection" style="line-height: 17.5499992370605px;">
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Follow the steps in the procedure below to configure merge replication and log shipping.</span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span class="label" style="font-weight: 700;"><span style="color: blue; font-family: Verdana, sans-serif;">To configure merge replication and log shipping</span></span></div>
<ol>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Configure log shipping for the publication database. For more information.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If the Publisher fails, at the secondary server, rename the computer and then rename the SQL Server instance to match the primary server name. For information about renaming the computer, see the Windows documentation. For information about renaming the server.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Restore the last log of the database to the secondary server, using the KEEP_REPLICATION option of RESTORE LOG. This retains all replication settings for the database. </span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Restore the <strong>msdb</strong> database and <strong>master</strong> databases from the primary to the secondary. If the primary was also a Distributor, restore the distribution database from the primary to the secondary.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">These databases must be consistent with the publication database at the primary in terms of replication configuration and settings.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">At the secondary server, restore the service master key that was backed up from the primary. For more information.</span></div>
</li>
<li><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Synchronize the publication database with one or more subscription databases. This allows you to upload those changes made previously in the publication database, but not represented in the restored backup. The data that can be uploaded depends on the way in which a publication is filtered:</span></div>
<ul>
<li style="list-style-image: none;"><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If the publication is not filtered, you should be able to bring the publication database up-to-date by synchronizing with the most up-to-date Subscriber.</span></div>
</li>
<li style="list-style-image: none;"><div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If the publication is filtered, you might not be able to bring the publication database up-to-date. Consider a table that is partitioned such that each subscription receives customer data only for a single region: North, East, South, and West. If there is at least one Subscriber for each partition of data, synchronizing with a Subscriber for each partition should bring the publication database up-to-date. However, if data in the West partition, for example, was not replicated to any Subscribers, this data at the Publisher cannot be brought up-to-date. In this case, we recommend reinitializing all subscriptions so that the data at the Publisher and Subscribers converges. For more information.</span></div>
</li>
</ul>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If you synchronize with a Subscriber that is running a version of SQL Server prior to SQL Server 2005, the subscription cannot be anonymous; it must be a client subscription or server subscription (referred to as local subscriptions and global subscriptions in previous releases). For more information. </span></div>
</li>
</ol>
</div>
</div>
</div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com7tag:blogger.com,1999:blog-4700053866498083794.post-62398674071655683122015-03-30T03:12:00.005+05:302015-03-30T03:15:51.272+05:30SQL Server :: How Transactional Replication Works<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Transactional replication is implemented by the SQL Server Snapshot Agent, Log Reader Agent, and Distribution Agent. The Snapshot Agent prepares snapshot files containing schema and data of published tables and database objects, stores the files in the snapshot folder, and records synchronization jobs in the distribution database on the Distributor.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">The Log Reader Agent monitors the transaction log of each database configured for transactional replication and copies the transactions marked for replication from the transaction log into the distribution database, which acts as a reliable store-and-forward queue. The Distribution Agent copies the initial snapshot files from the snapshot folder and the transactions held in the distribution database tables to Subscribers.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Incremental changes made at the Publisher flow to Subscribers according to the schedule of the Distribution Agent, which can run continuously for minimal latency, or at scheduled intervals. Because changes to the data must be made at the Publisher (when transactional replication is used without immediate updating or queued updating options), update conflicts are avoided. Ultimately, all Subscribers will achieve the same values as the Publisher. If immediate updating or queued updating options are used with transactional replication, updates can be made at the Subscriber, and with queued updating, conflicts might occur. </span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">The following illustration shows the principal components of transactional replication.</span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="introduction" style="color: #2a2a2a; font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; line-height: 17.5499992370605px;">
<img alt="Transactional replication components and data flow" id="trnsact" src="https://i-technet.sec.s-msft.com/dynimg/IC145887.gif" style="border: 0px;" title="Transactional replication components and data flow" xmlns="" /></div>
<div style="color: #2a2a2a; line-height: 17.5499992370605px;">
<h2 class="LW_CollapsibleArea_TitleDiv" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 9px 0px 19px; padding: 0px;">
<span class="LW_CollapsibleArea_Title" style="color: #2a2a2a; display: block; font-size: 1.692em;">Initial Dataset</span><div class="LW_CollapsibleArea_HrDiv" style="padding-top: 0px;">
</div>
</h2>
<div class="sectionblock" style="padding-bottom: 20px; padding-left: 15px;">
<div style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px;">
<a href="https://www.blogger.com/null" id="sectionToggle0" style="color: #00749e;"></a></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Before a new transactional replication Subscriber can receive incremental changes from a Publisher, the Subscriber must contain tables with the same schema and data as the tables at the Publisher. The initial dataset is typically a snapshot that is created by the Snapshot Agent and distributed and applied by the Distribution Agent. The initial dataset can also be supplied through a backup or other means, such as SQL Server Integration Services. </span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">When snapshots are distributed and applied to Subscribers, only those Subscribers waiting for initial snapshots are affected. Other Subscribers to that publication (those that have already been initialized) are unaffected.</span></div>
<h3 class="subHeading" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 1.386em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;">
Concurrent Snapshot Processing</h3>
<div class="subsection">
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Snapshot replication places shared locks on all tables published as part of replication for the duration of snapshot generation. This can prevent updates from being made on the publishing tables. Concurrent snapshot processing, the default with transactional replication, does not hold the share locks in place during the entire snapshot generation, which allows users to continue working uninterrupted while replication creates initial snapshot files.</span></div>
</div>
<h3 class="subHeading" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 1.386em; font-weight: normal; margin: 0px; padding-bottom: 5px; padding-top: 5px;">
Snapshot Agent</h3>
<div class="subsection">
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">The procedures by which the Snapshot Agent implements the initial snapshot in transactional replication are the same procedures used in snapshot replication (except as outlined above with regard to concurrent snapshot processing). </span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">After the snapshot files have been generated, you can view them in the snapshot folder using Microsoft Windows Explorer.</span></div>
</div>
</div>
</div>
<div style="color: #2a2a2a; line-height: 17.5499992370605px;">
<h2 class="LW_CollapsibleArea_TitleDiv" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 9px 0px 19px; padding: 0px;">
<span class="LW_CollapsibleArea_Title" style="color: #2a2a2a; display: block; font-size: 1.692em;">Modifying Data and the Log Reader Agent</span><div class="LW_CollapsibleArea_HrDiv" style="padding-top: 0px;">
</div>
</h2>
<div class="sectionblock" style="padding-bottom: 20px; padding-left: 15px;">
<div style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px;">
<span style="font-family: Verdana, sans-serif; font-size: small;"><a href="https://www.blogger.com/null" id="sectionToggle1" style="color: #00749e;"></a></span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">The Log Reader Agent runs at the Distributor; it typically runs continuously, but can also run according to a schedule you establish. When executing, the Log Reader Agent first reads the publication transaction log (the same database log used for transaction tracking and recovery during regular SQL Server Database Engine operations) and identifies any INSERT, UPDATE, and DELETE statements, or other modifications made to the data in transactions that have been marked for replication. Next, the agent copies those transactions in batches to the distribution database at the Distributor. The Log Reader Agent uses the internal stored procedure <strong>sp_replcmds</strong> to get the next set of commands marked for replication from the log. The distribution database then becomes the store-and-forward queue from which changes are sent to Subscribers. Only committed transactions are sent to the distribution database.</span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">After the entire batch of transactions has been written successfully to the distribution database, it is committed. Following the commit of each batch of commands to the Distributor, the Log Reader Agent calls <strong>sp_repldone</strong> to mark where replication was last completed. Finally, the agent marks the rows in the transaction log that are ready to be purged. Rows still waiting to be replicated are not purged.</span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Transaction commands are stored in the distribution database until they are propagated to all Subscribers or until the maximum distribution retention period has been reached. Subscribers receive transactions in the same order in which they were applied at the Publisher.</span></div>
</div>
</div>
<div style="color: #2a2a2a; line-height: 17.5499992370605px;">
<h2 class="LW_CollapsibleArea_TitleDiv" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 9px 0px 19px; padding: 0px;">
<span class="LW_CollapsibleArea_Title" style="color: #2a2a2a; display: block; font-size: 1.692em;">Distribution Agent</span><div class="LW_CollapsibleArea_HrDiv" style="padding-top: 0px;">
</div>
</h2>
<div class="sectionblock" style="padding-bottom: 20px; padding-left: 15px;">
<div style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px;">
<span style="font-family: Verdana, sans-serif;"><a href="https://www.blogger.com/null" id="sectionToggle2" style="color: #00749e;"></a></span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">The Distribution Agent runs at the Distributor for push subscriptions and at the Subscriber for pull subscriptions. The agent moves transactions from the distribution database to the Subscriber. If a subscription is marked for validation, the Distribution Agent also checks whether data at the Publisher and Subscriber match.<span style="font-size: 13px;"> </span></span></div>
</div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com1tag:blogger.com,1999:blog-4700053866498083794.post-48933595915021886452015-03-30T03:07:00.003+05:302015-03-30T03:09:02.336+05:30SQL Server :: How Snapshot Replication Works<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">By default, all three types of replication use a snapshot to initialize Subscribers. The SQL Server Snapshot Agent always generates the snapshot files, but the agent that delivers the files differs depending on the type of replication being used. Snapshot replication and transnational replication use the Distribution Agent to deliver the files, whereas merge replication uses the SQL Server Merge Agent. The Snapshot Agent runs at the Distributor. The Distribution Agent and Merge Agent run at the Distributor for push subscriptions, or at Subscribers for pull subscriptions. </span></div>
<div style="color: #2a2a2a; line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Snapshots can be generated and applied either immediately after the subscription is created or according to a schedule set at the time the publication is created. The Snapshot Agent prepares snapshot files containing the schema and data of published tables and database objects, stores the files in the snapshot folder for the Publisher, and records tracking information in the distribution database on the Distributor. You specify a default snapshot folder when you configure a Distributor, but you can specify an alternate location for a publication instead of or in addition to the default. </span></div>
<div class="introduction" style="color: #2a2a2a; line-height: 17.5499992370605px;">
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">The following illustration shows the principal components of snapshot replication.</span></div>
<span style="font-family: Segoe UI, Lucida Grande, Verdana, Arial, Helvetica, sans-serif; font-size: 13px;"><span style="border-color: initial; border-image-outset: initial; border-image-repeat: initial; border-image-slice: initial; border-image-source: initial; border-image-width: initial; border-style: initial;"><img alt="Snapshot replication components and data flow" id="snapshot" src="https://i-technet.sec.s-msft.com/dynimg/IC171003.gif" style="border: 0px;" title="Snapshot replication components and data flow" xmlns="" /></span></span></div>
<div style="color: #2a2a2a; font-size: 13px; line-height: 17.5499992370605px;">
<h2 class="LW_CollapsibleArea_TitleDiv" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 9px 0px 19px; padding: 0px;">
<span class="LW_CollapsibleArea_Title" style="color: #2a2a2a; display: block; font-size: 1.692em;"><br /></span><span class="LW_CollapsibleArea_Title" style="color: #2a2a2a; display: block; font-size: 1.692em;">Snapshot Agent</span><div class="LW_CollapsibleArea_HrDiv" style="padding-top: 0px;">
</div>
</h2>
<div class="sectionblock" style="padding-bottom: 20px; padding-left: 15px;">
<span style="font-family: Verdana, sans-serif;"><a href="https://www.blogger.com/null" id="sectionToggle0" style="color: #00749e;"></a></span><br />
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For merge replication, a snapshot is generated every time the Snapshot Agent runs. For transactional replication, snapshot generation depends on the setting of the publication property <strong>immediate_sync</strong>. If the property is set to TRUE (the default when using the New Publication Wizard), a snapshot is generated every time the Snapshot Agent runs, and it can be applied to a Subscriber at any time. If the property is set to FALSE (the default when using <strong>sp_addpublication</strong>), the snapshot is generated only if a new subscription has been added since the last Snapshot Agent run; Subscribers must wait for the Snapshot Agent to complete before they can synchronize.</span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">The Snapshot Agent performs the following steps:</span></div>
<ol>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Establishes a connection from the Distributor to the Publisher, and then takes locks on published tables if necessary:</span></div>
<ul>
<li style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For merge publications, the Snapshot Agent does not take any locks.</span></div>
</li>
<li style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For transactional publications, by default the Snapshot Agent take locks only during the initial phase of snapshot generation.</span></div>
</li>
<li style="list-style-image: none;"><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For snapshot publications, locks are held during the entire snapshot generation process.</span></div>
</li>
</ul>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Writes a copy of the table schema for each article to a .sch file. If other database objects are published, such as indexes, constraints, stored procedures, views, user-defined functions, and so on, additional script files are generated.</span></div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Copies the data from the published table at the Publisher and writes the data to the snapshot folder. The snapshot is generated as a set of bulk copy program (BCP) files.</span></div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For snapshot and transactional publications, the Snapshot Agent appends rows to the <strong>MSrepl_commands</strong> and <strong>MSrepl_transactions</strong> tables in the distribution database. The entries in the <strong>MSrepl_commands</strong> table are commands indicating the location of .sch and .bcp files, any other snapshot files, and references to any pre- or post-snapshot scripts. The entries in the <strong>MSrepl_transactions</strong> table are commands relevant to synchronizing the Subscriber.</span></div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Releases any locks on published tables.</span></div>
</li>
</ol>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">During snapshot generation, you cannot make schema changes on published tables. After the snapshot files are generated, you can view them in the snapshot folder using Windows Explorer.</span></div>
</div>
</div>
<div style="color: #2a2a2a; font-size: 13px; line-height: 17.5499992370605px;">
<h2 class="LW_CollapsibleArea_TitleDiv" style="font-family: 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-size: 13px; font-weight: normal; margin: 9px 0px 19px; padding: 0px;">
<span class="LW_CollapsibleArea_Title" style="color: #2a2a2a; display: block; font-size: 1.692em;">Distribution Agent and Merge Agent</span><div class="LW_CollapsibleArea_HrDiv" style="padding-top: 0px;">
</div>
</h2>
<div class="sectionblock" style="padding-bottom: 20px; padding-left: 15px;">
<span style="font-family: Verdana, sans-serif;"><a href="https://www.blogger.com/null" id="sectionToggle1" style="color: #00749e;"></a></span><br />
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For snapshot publications, each time the Distribution Agent runs for the publication, it moves a new snapshot to each Subscriber that has not yet been synchronized, has been marked for reinitialization, or includes new articles.</span></div>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For snapshot and transactional replication, the Distribution Agent performs the following steps:</span></div>
<ol>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Establishes a connection to the Distributor.</span></div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Examines the <strong>MSrepl_commands</strong> and <strong>MSrepl_transactions</strong> tables in the distribution database on the Distributor. The agent reads the location of the snapshot files from the first table and Subscriber synchronization commands from both tables.</span></div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Applies the schema and commands to the subscription database.</span></div>
</li>
</ol>
<div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">For an unfiltered merge replication publication, the Merge Agent performs the following steps:</span></div>
<ol>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Establishes a connection to the Publisher.</span></div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">Examines the <strong>sysmergeschemachange</strong> table on the Publisher and determines whether there is a new snapshot that should be applied at the Subscriber.</span></div>
</li>
<li><div style="line-height: 18px; padding-bottom: 15px;">
<span style="font-family: Verdana, sans-serif;">If a new snapshot is available, the Merge Agent applies to the subscription database the snapshot files from the location specified in <strong>sysmergeschemachange</strong>.</span></div>
</li>
</ol>
</div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com2tag:blogger.com,1999:blog-4700053866498083794.post-68353295203423229142015-03-30T02:57:00.003+05:302015-03-30T03:00:24.178+05:30SQL Server Replication Step by Step<div dir="ltr" style="text-align: left;" trbidi="on">
<h2 style="background-color: white; font-weight: 200; margin: 20px 0px 11px; padding: 0px 0px 10px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: large;">Introduction</span></h2>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
Earlier, most of the applications were using standalone environment where a single centralized server was responding to multiple users, working in different locations.</div>
<h2 style="background-color: white; font-weight: 200; margin: 20px 0px 11px; padding: 0px 0px 10px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">Centralized Approach and Problems</span></h2>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Performance problems</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Availability problems</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Maintenance problems</li>
</ul>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
To overcome all the above problems, we can use replication solution.</div>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
Replication allows to maintain same database multiple copies at different locations. Log shipping and mirroring allows to maintain complete database redundancy whereas replication allows to maintain some part of the database (a set of required objects) at users location. Changes made at different user locations are synchronized to the main server. It is object level high availability feature. According to Books Online:</div>
<blockquote dir="ltr" style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
<em style="border: 0px; margin: 0px; padding: 0px;">Replication is a set of technologies for copying and distributing data and database objects from one database to another and then synchronizing between databases to maintain consistency.</em></blockquote>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
Unlike other methods of high availability, it doesn’t distribute entire database, but only distributes some part of database like tables or views.</div>
<h2 style="background-color: white; font-weight: 200; margin: 20px 0px 11px; padding: 0px 0px 10px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">
Advantages</span></h2>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Improved performance</li>
<li style="border: 0px; margin: 0px; padding: 0px;">To reduce locking conflicts when multiple users are working</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Improved availability</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Easy maintenance</li>
<li style="border: 0px; margin: 0px; padding: 0px;">To allow sites work independently. So that each location can set up its own rules and procedures for working with its copy of the data.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">To move data closer to the user</li>
</ul>
<h2 style="background-color: white; font-weight: 200; margin: 20px 0px 11px; padding: 0px 0px 10px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">
SQL Server 2005 Features</span></h2>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Restartable Snapshots</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Oracle Publishing</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Replicating all DDLs</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Merge Replication allows to introduce custom business logic into the synchronization process</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Merge Replication provides the ability to replicate data over HTTP with web synchronization option</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Updatable Transactional Subscriptions can now handle updates to large data types at Subscribers</li>
</ul>
<h2 style="background-color: white; font-weight: 200; margin: 20px 0px 11px; padding: 0px 0px 10px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">
SQL Server 2008 Features</span></h2>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">In SQL Server 2005, replication had to be stopped in order to perform some actions like adding nodes, making schema changes, etc. But in 2008, these can be done online.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Conflict detection capacity in peer-to-peer replication.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">All types of conflicts are detected and reported through agent error log or conflicts table.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">In SQL Server 2005, switch partition is unsupported, but in 2008 it supports.<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;"><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">@allow_partition_switch</code></li>
<li style="border: 0px; margin: 0px; padding: 0px;"><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">@replicate_partition_switch</code></li>
</ul>
</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Performance improvements, under Windows 2008</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Snapshot delivery of more than 500MB/minute</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Time to deliver 100000 varbinary(max) records in less than 2minutes where in 2005 223 minutes.</li>
</ul>
</ul>
<h2 style="background-color: white; font-weight: 200; margin: 20px 0px 11px; padding: 0px 0px 10px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">
SQL Server 2012 Features</span></h2>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Updatable subscriptions with transactional publications are discontinued.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Four new stored procedures provide replication support for AlwaysOn.<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;"><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">sp_get_redirected_publisher</code></li>
<li style="border: 0px; margin: 0px; padding: 0px;"><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">sp_redirect_publisher</code></li>
<li style="border: 0px; margin: 0px; padding: 0px;"><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">sp_validate_replica_hosts_as_publishers</code></li>
<li style="border: 0px; margin: 0px; padding: 0px;"><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">sp_validate_redirected_publisher</code></li>
</ul>
</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Replication supports the following features on Availability groups:<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">A publication database can be part of an availability group. The publisher instances must share a common distributor.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">In an AlwaysOn Availability Group, an AlwaysOn secondary cannot be a publisher. Republishing is not supported when replication is combined with AlwaysOn.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Heterogeneous replication to non-SQL Server subscribers is deprecated. To move data, create solutions using change data capture and SSIS.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Oracle Publishing is deprecated.</li>
</ul>
</li>
</ul>
<h2 style="background-color: white; font-weight: 200; margin: 20px 0px 11px; padding: 0px 0px 10px;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">
Replication Architecture</span></h2>
<img src="http://www.codeproject.com/KB/database/715550/image003.gif" style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" /><br />
<h3 style="background-color: white; font-weight: normal;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">
REPLICATION ENTITIES</span></h3>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
SQL Server replication is based on the “Publish and Subscribe” metaphor. Let us look at each of the individual components in detail.</div>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Publisher</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is a source database where replication starts. It makes data available for replication.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Publishers define what they publish through a publication.</li>
</ul>
<li style="border: 0px; margin: 0px; padding: 0px;">Article</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Articles are the actual database objects included in replication like tables, views, indexes, etc.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">An article can be filtered when sent to the subscriber.</li>
</ul>
<li style="border: 0px; margin: 0px; padding: 0px;">Publication</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">A group of articles is called publication.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">An article can’t be distributed individually. Hence publication is required.</li>
</ul>
<li style="border: 0px; margin: 0px; padding: 0px;">Distributor</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is intermediary between publisher and subscriber.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It receives published transactions or snapshots and then stores and forwards these publications to the subscriber.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It has 6 system databases including distribution.</li>
</ul>
<li style="border: 0px; margin: 0px; padding: 0px;">Subscriber</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is the destination database where replication ends.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It can subscribe to multiple publications from multiple publishers.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It can send data back to publisher or publish data to other subscribers.</li>
</ul>
<li style="border: 0px; margin: 0px; padding: 0px;">Subscription</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is a request by a subscriber to receive a publication.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">We have two types of subscriptions - push and pull.</li>
</ul>
<li style="border: 0px; margin: 0px; padding: 0px;">Push Subscriptions</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">With this subscription, the publisher is responsible for updating all the changes to the subscriber without the subscriber asking those changes.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Push subscriptions are created at the Publisher server</li>
</ul>
<li style="border: 0px; margin: 0px; padding: 0px;">Pull Subscriptions -</li>
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">With this subscription the subscriber initiates the replication instead of the publisher.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">The subscriptions are created at the Subscriber server.</li>
</ul>
</ol>
<h3 style="background-color: white; font-weight: normal;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">
REPLICATION AGENTS</span></h3>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">We have discussed that replication process works in the background with the help of jobs.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">These jobs are also called as agents. These jobs internally uses respective <em style="border: 0px; margin: 0px; padding: 0px;">.exe</em> files present in <em style="border: 0px; margin: 0px; padding: 0px;">…………….. \110\COM</em> folder.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">All the agents information is present in Distribution db in the following tables.<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;"><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">dbo.MSxxx_agents</code></li>
<li style="border: 0px; margin: 0px; padding: 0px;"><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">dbo.MSxxx_history</code></li>
</ul>
</li>
</ul>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
Snapshot Agent</h4>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is an executable file that prepares snapshot files containing schema and data of published tables and db objects.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It stores the files in the snapshot folder, and records synchronization jobs in the distribution database.</li>
</ul>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
Distribution Agent</h4>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is used with snapshot and transactional replication.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It applies the initial snapshot to the Subscriber and moves transactions held in the Distribution db to Subscribers.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It runs at either the Distributor for push subscriptions or at the Subscriber for pull subscriptions.</li>
</ul>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
Log Reader Agent</h4>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is used with transactional replication, which moves transactions marked for replication from the transaction log on the publisher to the distribution db.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Each db has its own Log Reader Agent that runs on the Distributor and connects to the Publisher.</li>
</ul>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
Merge Agent</h4>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is used with merge replication.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It applies the initial snapshot to the Subscriber and moves incremental data changes that occur.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Each merge subscription has its own Merge Agent that connects to both the Publisher and the Subscriber and updates both.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It captures changes using triggers.</li>
</ul>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
Queue Reader Agent</h4>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">It is used with transactional replication with the queued updating option.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It runs at the Distributor and moves changes made at the Subscriber back to the Publisher.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Unlike Distribution Agent and Merge Agent, only one instance of the Queue Reader Agent exists to service all Publishers and publications for a given distribution db.</li>
</ul>
<h3 style="background-color: white; font-weight: normal;">
<span style="color: blue; font-family: Verdana, sans-serif; font-size: small;">
REPLICATION TYPES</span></h3>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Snapshot Replication</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Transactional Replication</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Merge Replication</li>
</ul>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
1. Snapshot Replication</h4>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">The snapshot process is commonly used to provide the initial set of data and database objects for transactional and merge publications.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It copies and distributes data and database objects exactly as they appear at the current moment of time.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Snapshot replication is used to provide the initial data set for transactional and merge replication.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It can also be used when complete refreshes of data are appropriate (BOL).</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Scenarios</li>
<li style="border: 0px; margin: 0px; padding: 0px;">When the data is not changing frequently.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">If we want to replicate small amount of data.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">To replicate Look-up tables which are not changing frequently.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">It is acceptable to have copies of data that are out of date with respect to the publisher for a period of time</li>
</ul>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
For example, if a sales organization maintains a product price list and the prices are all updated at the same time once or twice each year, replicating the entire snapshot of data after it has changed is recommended.</div>
<h5 style="background-color: white; color: grey; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin-bottom: 2px;">
Snapshot Replication Architecture</h5>
<img src="http://www.codeproject.com/KB/database/715550/image004.jpg" height="339" style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="546" /><br />
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
Source: BOL</div>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
How it Works?</h4>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Snapshot Agent establish a connection from distributor to publisher and generates fresh snapshot into snapshot folder by placing locks.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Snapshot agent writes copy of the table schema for each article to <em style="border: 0px; margin: 0px; padding: 0px;">.sch</em> file.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Copies data from published table at the Publisher and writes data to the snapshot folder in the form of<em style="border: 0px; margin: 0px; padding: 0px;">.bcp</em> file.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Appends rows to the <code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">Msrepl_commands </code>and <code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">Msrepl_transactions</code>.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Releases any locks on published tables.</li>
</ul>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
Configuring Replication</h4>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Configuring distributor</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Configuring publisher</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Creating publication of required type</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Creating subscription(s)</li>
</ol>
<h5 style="background-color: white; color: grey; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin-bottom: 2px;">
Step 1: Configuring distributor and publisher</h5>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Take three instances<img src="http://www.codeproject.com/KB/database/715550/image005.jpg" height="412" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="303" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to second instance -> Right click on Replication -> Configure Distribution…</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next -> Select ‘SERVER2’ will act as its own distributor;<img src="http://www.codeproject.com/KB/database/715550/image006.jpg" height="214" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="534" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next<img src="http://www.codeproject.com/KB/database/715550/image007.jpg" height="268" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="526" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Uncheck the check box present at Server2 -> Add<img src="http://www.codeproject.com/KB/database/715550/image008.jpg" height="298" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="521" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select instance Server1</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Enter strong password. (Automatically one login is created in distributor with the name Distributor_Admin)</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Finish<img src="http://www.codeproject.com/KB/database/715550/image009.jpg" height="345" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="502" /></li>
</ol>
<h5 style="background-color: white; color: grey; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin-bottom: 2px;">
Observations</h5>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Go to distributor -> Databases -> Find the new database “<code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">Distribution</code>”</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to Security -> Logins -> Find a new login “<code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">Distributor_admin</code>”</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to Server Objects -> Linked servers -> Find new linked server “<code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">repl_distributor</code>”</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Right Click on Replication -> Select distributor Properties<img src="http://www.codeproject.com/KB/database/715550/image010.jpg" height="345" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="357" /><br />
<br />
<img src="http://www.codeproject.com/KB/database/715550/image011.jpg" height="271" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="509" /></li>
</ol>
<ul style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;"><br />
<ul style="border: 0px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Transactions stored in distribution database are removed after 72 hrs and agents history is removed after 48 hrs.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">To view snapshot folder path -> Click on publishers -> click on browse button (…) present to right side of publisher name.<img src="http://www.codeproject.com/KB/database/715550/image012.jpg" height="288" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="524" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to SQL Server Agent -> Jobs -> Find 6 new jobs are created automatically.<img src="http://www.codeproject.com/KB/database/715550/image013.jpg" height="191" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="382" /></li>
</ul>
</ul>
<h5 style="background-color: white; color: grey; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin-bottom: 2px;">
Step 2: Creating Snapshot Publication</h5>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Go to publisher (Server1) -> Replication -> Right Click on Local Publications -> New publication.<img src="http://www.codeproject.com/KB/database/715550/image014.jpg" height="255" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="372" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select second option -> Click on Add -> Select Distributor instance (<code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">Server2</code>)<img src="http://www.codeproject.com/KB/database/715550/image015.jpg" height="299" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="549" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Connect ? Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Enter password of <code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">Distributor_admin </code>login which we have mentioned while configuring publisher.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select required database. For example <code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;">SSISDb</code><code style="border: 0px; color: #990000; font-family: Consolas, 'Courier New', Courier, mono; font-size: 11pt; font-stretch: normal; margin: 0px; padding: 0px;"><img src="http://www.codeproject.com/KB/database/715550/image016.jpg" height="299" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="549" /></code></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select “Snapshot Publication” -> Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select required tables -> Next<img src="http://www.codeproject.com/KB/database/715550/image017.jpg" height="173" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="529" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next -> Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select the check box to create snapshot as follows<img src="http://www.codeproject.com/KB/database/715550/image018.jpg" height="217" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="529" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Click on security settings</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select as follows<img src="http://www.codeproject.com/KB/database/715550/image019.jpg" height="218" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="529" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">OK</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next -> Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Enter publication name as follows<img src="http://www.codeproject.com/KB/database/715550/image020.jpg" height="275" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="504" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Finish<img src="http://www.codeproject.com/KB/database/715550/image021.jpg" height="251" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="534" /></li>
</ol>
<h5 style="background-color: white; color: grey; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin-bottom: 2px;">
Observations</h5>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Go to publisher -> Replication -> Local publications -> Find new publication is created<img src="http://www.codeproject.com/KB/database/715550/image022.jpg" height="278" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="355" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">To check snapshot was created or not -> Right click on the publication (SSISDBSP) -> View Snapshot Agent Status</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to repldata folder as follows:<img src="http://www.codeproject.com/KB/database/715550/image023.jpg" height="154" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="514" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to sub folders find the snapshot files (.bcp, .sch, idx, .trg)</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to distributor -> SQL Server Agent -> Jobs -> Find snapshot agent job was created<img src="http://www.codeproject.com/KB/database/715550/image024.jpg" height="211" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="387" /></li>
</ol>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
FAQ: How to display database names which consists of publications?</div>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
Ans: Go to publisher -> take new query -></div>
<div class="pre-action-link" id="premain66937" style="background-color: white; border-bottom-color: rgb(204, 204, 204); border-bottom-style: solid; border-width: 0px 0px 1px; color: #999999; font-family: 'Segoe UI', Arial, sans-serif; font-size: 11px; margin: 0px; padding: 0px; text-align: right; width: 700px;">
<span id="prehide66937" style="-webkit-transition: color 0.1s linear; border: 0px; cursor: pointer; margin: 0px; padding: 0px; transition: color 0.1s linear;">Hide</span> <span style="-webkit-transition: color 0.1s linear; border: 0px; cursor: pointer; margin: 0px; padding: 0px; transition: color 0.1s linear;">Copy Code</span></div>
<pre id="pre66937" lang="sql" style="background-color: #fbedbb; border: 1px solid rgb(251, 237, 187); font-family: Consolas, 'Courier New', Courier, mono; font-size: 9pt; font-stretch: normal; overflow: auto; padding: 6px; tab-size: 4; white-space: pre-wrap; word-wrap: break-word;"><span class="code-keyword" style="border: 0px; color: blue; margin: 0px; padding: 0px;">select</span> name <span class="code-keyword" style="border: 0px; color: blue; margin: 0px; padding: 0px;">from</span> sys.databases <span class="code-keyword" style="border: 0px; color: blue; margin: 0px; padding: 0px;">where</span> is_published=1 <span class="code-keyword" style="border: 0px; color: blue; margin: 0px; padding: 0px;">or</span> is_subscribed=1
</pre>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
Creating Subscription</h4>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Go to publisher -> Replication -> Local Publications -> Right Click on SSISDBSP -> New Subscription</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select the publication name: SSISDBSP</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select Push subscriptions<img src="http://www.codeproject.com/KB/database/715550/image025.jpg" height="283" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="365" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Add Subscriber -> Select third instance (<em style="border: 0px; margin: 0px; padding: 0px;">Server1\test</em>) -> Connect<img src="http://www.codeproject.com/KB/database/715550/image026.jpg" height="220" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="537" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Under Subscription Database if there is no database exists with same name -> Select New database -> Enter Database Name -> OK -> Next<img src="http://www.codeproject.com/KB/database/715550/image027.jpg" height="290" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="531" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Click on browse button (…) under distribution agent security page.</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Select “Run under Agent Service Account” and “By impersonating the process account” options as both distributor and subscriber’s service accounts are same. If the service account of subscriber is different, then create a login in subscriber with sysadmin privileges then mention that login details.<img src="http://www.codeproject.com/KB/database/715550/image028.jpg" height="290" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="537" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Under Agent Schedule -> Select “Run Continuously”</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Under Initialize when select -> Immediately</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Next -> Next -> Finish</li>
</ol>
<h5 style="background-color: white; color: grey; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin-bottom: 2px;">
Observations</h5>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Go to subscriber -> SSISDB -> Tables -> Find two tables are created<img src="http://www.codeproject.com/KB/database/715550/image029.jpg" height="296" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="537" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to distributor -> SQL Server Agent -> Find new job is created, related to Distribution Agent<img src="http://www.codeproject.com/KB/database/715550/image030.jpg" height="228" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="271" /><br />
<img src="http://www.codeproject.com/KB/database/715550/image031.jpg" height="255" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="327" /></li>
</ol>
<h4 style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px;">
Verifying Replication</h4>
<ol style="background-color: white; border: 0px; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px; margin: 10px 0px; padding: 0px 0px 0px 40px;">
<li style="border: 0px; margin: 0px; padding: 0px;">Go to publisher perform some changes in any table present in publication</li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to distributor run Snapshot Agent Job<img src="http://www.codeproject.com/KB/database/715550/image032.jpg" height="267" style="border: 0px; height: auto; margin: 0px; max-width: 100%; overflow: auto; padding: 0px;" width="523" /></li>
<li style="border: 0px; margin: 0px; padding: 0px;">Go to subscriber observe the changes in the respective table</li>
</ol>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
FAQ: How many articles may be there in a snapshot publication?<br />
32767</div>
<div style="background-color: white; color: #111111; font-family: 'Segoe UI', Arial, sans-serif; font-size: 14px;">
FAQ: Max columns in a table?<br />
1000</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com1tag:blogger.com,1999:blog-4700053866498083794.post-38991572007535281862014-09-02T23:57:00.000+05:302014-09-03T16:14:16.526+05:30SQL Server- Replication Administration Interview Questions and Answers - DotNet Brother <div dir="ltr" style="text-align: left;" trbidi="on">
<h2 style="margin-top: 0in;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">Does activity need to be stopped on a
database when it is published?</span></h2>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt;"><span style="font-weight: normal;">No.
Activity can continue on a database while a publication is being created. Be
aware that producing a snapshot can be resource-intensive, so it is best to
generate snapshots during periods of lower activity on the database (by default
a snapshot is generated when you complete the New Publication Wizard).</span><o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
</h3>
<h2 style="margin-top: 0in;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">Are tables locked during snapshot
generation?<o:p></o:p></span></h2>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<span style="font-weight: normal;"><u1:p></u1:p>
</span><div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;">The
length of time that the locks are taken depends on the type of replication used:<o:p></o:p></span></div>
<span style="font-weight: normal;"><u1:p></u1:p>
</span><ul type="disc">
<li class="MsoNormal" style="color: #2a2a2a; line-height: 13.5pt; mso-list: l0 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;"><span style="font-weight: normal;"><span style="font-family: "Verdana","sans-serif"; font-size: 10.0pt;">For merge
publications, the Snapshot Agent does not take any locks.</span><span style="font-size: 10.0pt;"><o:p></o:p></span></span></li>
<span style="font-weight: normal;"><u1:p></u1:p>
</span>
<li class="MsoNormal" style="color: #2a2a2a; line-height: 13.5pt; mso-list: l0 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;"><span style="font-weight: normal;"><span style="font-family: "Verdana","sans-serif"; font-size: 10.0pt;">For
transactional publications, by default the Snapshot Agent takes locks only
during the initial phase of snapshot generation.</span><span style="font-size: 10.0pt;"><o:p></o:p></span></span></li>
<span style="font-weight: normal;"><u1:p></u1:p>
</span>
<li class="MsoNormal" style="color: #2a2a2a; line-height: 13.5pt; mso-list: l0 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;"><span style="font-weight: normal;"><span style="font-family: "Verdana","sans-serif"; font-size: 10.0pt;">For snapshot
publications the Snapshot Agent takes locks during the entire snapshot
generation process.</span><span style="font-size: 10.0pt;"><o:p></o:p></span></span></li>
</ul>
<span style="font-weight: normal;"><u1:p></u1:p>
</span><div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt;"><span style="font-weight: normal;">Note:-
Because locks prevent other users from updating the tables, the Snapshot Agent
should be scheduled to execute during periods of lower activity on the
database, especially for snapshot publications.</span><o:p></o:p></span><br />
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt;"><span style="font-weight: normal;"><br /></span></span></div>
</h3>
<h2 style="line-height: 13.15pt; margin: 0in; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">When is a subscription available; when can the
subscription database be used?</span></h2>
<h3 style="line-height: 13.15pt; margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: Verdana, sans-serif; font-size: 8pt; font-weight: normal;"> </span><o:p></o:p></h3>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;">A subscription
is available after the snapshot has been applied to the subscription database.
Even though the subscription database is accessible prior to this, the database
should not be used until after the snapshot has been applied. Use Replication
Monitor to check the status of snapshot generation and application:<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; text-indent: -.25in;">
<!--[if !supportLists]--><span style="font-weight: normal;"><span style="font-family: Symbol; font-size: 10pt;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt;">The snapshot is generated by the Snapshot Agent. View the status
of snapshot generation on the Agents tab for a publication in
Replication Monitor.</span><span style="font-size: 10pt;"><o:p></o:p></span></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; text-indent: -.25in;">
<!--[if !supportLists]--><span style="font-weight: normal;"><span style="font-family: Symbol; font-size: 10pt;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt;">The snapshot is applied by the Distribution Agent or Merge
Agent. View the status of snapshot application in the Distribution
Agent or Merge Agent page of Replication Monitor.</span></span><span style="font-size: 10pt;"><o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in; text-indent: -.25in;">
<br /></div>
</div>
</h3>
<h2 style="line-height: 13.15pt; margin: 0in; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">What happens if the Snapshot Agent has not
completed when the Distribution or Merge Agent starts?</span></h2>
<h3 style="line-height: 13.15pt; margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: Verdana, sans-serif; font-size: 8pt; font-weight: normal;"> </span><o:p></o:p></h3>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;">It
will not cause an error if the Distribution Agent or Merge Agent runs at the
same time as the Snapshot Agent. However, you must be aware of the following:<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; text-indent: -.25in;">
<!--[if !supportLists]--><span style="font-weight: normal;"><span style="font-family: Symbol; font-size: 10pt;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt;">If the Distribution Agent or Merge Agent is configured to run
continuously, the agent applies the snapshot automatically after the Snapshot
Agent completes.</span><span style="font-size: 10pt;"><o:p></o:p></span></span></div>
<span style="font-weight: normal;"><u1:p></u1:p>
<u1:p></u1:p>
<u1:p></u1:p>
<u1:p></u1:p>
<u1:p></u1:p>
<u1:p></u1:p>
<u1:p></u1:p>
</span><br />
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; text-indent: -.25in;">
<!--[if !supportLists]--><span style="font-weight: normal;"><span style="font-family: Symbol; font-size: 10pt;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt;">If the Distribution Agent or Merge Agent is configured to run on
a schedule or on-demand, and there is no snapshot available when the agent
runs, the agent will shut down with a message stating that a snapshot is not
yet available. You must run the agent again to apply the snapshot after the
Snapshot Agent has completed.</span></span><span style="font-size: 10pt;"><o:p></o:p></span><br />
<span style="font-weight: normal;"><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt;"><br /></span></span></div>
</div>
</h3>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">Should
I script my replication configuration?</span></h2>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; text-indent: -.25in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;">Yes. Scripting the replication configuration is a key
part of any disaster recovery plan for</span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";"><span style="font-weight: normal;"> a replication topology. </span><o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
</div>
</div>
</h3>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">What recovery model is required on a replicated
database?</span></h2>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; text-indent: -.25in;">
<div style="line-height: 13.5pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;">Replication functions properly using any of the
recovery models: simple, bulk-logged, or</span></div>
<div style="line-height: 13.5pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;">full. Merge replication tracks change
by storing information in metadata tables.</span></div>
<div style="line-height: 13.5pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;">Transactional replication tracks changes
by marking the transaction log, but this marking</span></div>
<div style="line-height: 13.5pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";"><span style="font-weight: normal;"> process is not affected by the
recovery model.</span><o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
</div>
</div>
</h3>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">Why does replication add a column to replicated
tables; will it be removed if the table isn't published?</span></h2>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; text-indent: -.25in;">
<div style="line-height: 13.5pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;">To track changes, merge replication and transactional
replication with queued updating</span></div>
<div style="line-height: 13.5pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;"> subscriptions must be able to uniquely
identify every row in every published table. To</span></div>
<div style="line-height: 13.5pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;"> accomplish this:<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="font-weight: normal;"><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Merge replication adds the
column<span class="apple-converted-space"> </span>rowguid<span class="apple-converted-space"> </span>to every table, unless the table
already has a column of data type<span class="apple-converted-space"> </span>uniqueidentifier<span class="apple-converted-space"> </span>with the<span class="apple-converted-space"> </span>ROWGUIDCOL<span class="apple-converted-space"> </span>property set (in which case this
column is used). If the table is dropped from the publication, the<span class="apple-converted-space"> </span>rowguid<span class="apple-converted-space"> </span>column is removed; if an existing
column was used for tracking, the column is not removed.<o:p></o:p></span></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="font-weight: normal;"><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">If a transactional publication
supports queued updating subscriptions, replication adds the column<span class="apple-converted-space"> </span>msrepl_tran_version<span class="apple-converted-space"> </span>to every table. If the table is
dropped from the publication, the<span class="apple-converted-space"> </span>msrepl_tran_version<span class="apple-converted-space"> </span>column is not removed.<o:p></o:p></span></span></div>
<span style="font-weight: normal;">
</span><br />
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="font-weight: normal;"><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--></span><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";"><span style="font-weight: normal;">A filter must not include the<span class="apple-converted-space"> </span><span class="input">rowguidcol</span><span class="apple-converted-space"> </span>used by replication to identify rows.
By default this is the column added at the time you set up merge replication
and is named<span class="apple-converted-space"> </span>rowguid.</span></span><br />
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
</div>
</div>
</div>
</h3>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-size: 12pt;"><span style="font-family: Verdana, sans-serif;">How do I manage constraints on published tables?</span></span></h2>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">There are a number of issues to consider regarding
constraints on published tables:</span></h2>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;"><span style="font-size: 7pt; line-height: normal;"><br /></span></span></h2>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;"><span style="font-size: 7pt; line-height: normal;"> </span></span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">Transactional replication
requires a primary key constraint on each published table. Merge replication
does not require a primary key, but if one is present, it must be replicated.
Snapshot replication does not require a primary key.</span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;"><span style="font-size: 7pt; line-height: normal;"> </span></span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">By default, primary key
constraints, indexes, and check constraints are replicated to Subscribers.</span></h2>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">The NOT FOR REPLICATION option
is specified by default for foreign key constraints and check constraints; the
constraints are enforced for user operations but not agent operations.</span></h2>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; text-indent: -.25in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in;">
<br /></div>
</div>
</div>
</div>
</h3>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-size: 12pt;"><span style="font-family: Verdana, sans-serif;">How
do I manage identity columns?</span></span></h2>
<h3 style="margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">Replication provides automatic identity range
management for replication topologies that include updates at the Subscriber</span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">.</span></h3>
<div>
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;"><br /></span></div>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-size: 12pt;"><span style="font-family: Verdana, sans-serif;">Can the same objects be published in different
publications?</span></span></h2>
<h3 style="margin: 0in 0in 0.0001pt;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">Yes, but with some restrictions.</span></h3>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; text-indent: -.25in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
</div>
</div>
</div>
</h3>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-size: 12pt;"><span style="font-family: Verdana, sans-serif;">Can multiple publications use the same
distribution database?</span></span></h2>
<h3 style="margin: 0in 0in 0.0001pt;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">Yes. There are no restrictions on the number or types
of publications that can use the same distribution database. All publications
from a given Publisher must use the same Distributor and distribution database.</span></h3>
<h3 style="margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;"><span style="color: #2a2a2a; font-size: 10pt;">If you have multiple publications, you can configure
multiple distribution databases at the Distributor to ensure that the data
flowing through each distribution database is from a single publication. Use
the</span><span class="apple-converted-space"><span style="color: #2a2a2a; font-size: 10pt;"> </span></span><span class="label"><span style="color: #2a2a2a; font-size: 10pt;">Distributor Properties</span></span><span class="apple-converted-space"><span style="color: #2a2a2a; font-size: 10pt;"> </span></span><span style="color: #2a2a2a; font-size: 10pt;">dialog
box or</span> <span style="color: #2a2a2a; font-size: 10pt;">sp_adddistributiondb </span> </span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt; text-indent: -0.25in;"><span style="font-weight: normal;">to add a
distribution database.</span></span></h3>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .25in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; text-indent: -.25in;">
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<div style="margin-bottom: .0001pt; margin: 0in; mso-line-height-alt: 13.5pt;">
<br /></div>
</div>
</div>
</div>
</h3>
<h2 style="margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-size: 12pt;"><span style="font-family: Verdana, sans-serif;">Does
replication encrypt the data?</span></span></h2>
<h3 style="margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">No. Replication does not encrypt data that is stored
in the database or transferred over the network.</span></h3>
<h3 style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt; line-height: 13.15pt; text-indent: -0.25in;"><br /></span></h3>
<h3 style="margin-bottom: .0001pt; margin: 0in;">
<div style="font-size: medium; font-weight: normal; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b>How do I replicate data over the Internet?</b></span></div>
</h3>
<h3 style="margin: 0in 0in 0.0001pt;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">Replicate data over the Internet using:</span></h3>
<h3 style="margin: 0in 0in 0.0001pt;">
<ul>
<li><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;"><span style="font-size: 7pt; line-height: normal;"> </span></span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">A Virtual Private Network (VPN).</span></li>
<li><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">The Web synchronization option for merge replication.</span></li>
</ul>
</h3>
<h3 style="margin: 0in 0in 0.0001pt;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">Note:- All types of Microsoft SQL Server replication can replicate data over a VPN, but you should consider Web synchronization if you are using merge replication.</span></h3>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin: 0in;">
<div style="line-height: 13.5pt; margin: 0in 0in 0in 0.25in; text-indent: -0.25in;">
<div style="line-height: 13.5pt; margin: 0in 0in 0in 0.5in; text-indent: -0.25in;">
<div style="line-height: 13.5pt; margin: 0in;">
<br /></div>
</div>
</div>
</div>
</h3>
<h3 style="margin-bottom: .0001pt; margin: 0in;">
<div style="font-size: medium; font-weight: normal; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b>Does replication resume if a connection is dropped</b></span></div>
</h3>
<h2 style="margin: 0in 0in 0.0001pt;">
<span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;">Yes. Replication processing resumes at the point at which it left off if a connection is dropped. If you are using merge replication over an unreliable network, consider using logical records, which ensures related changes are processed as a unit.</span></h2>
<h3 class="subHeading" style="margin: 0px; padding-bottom: 5px; padding-top: 5px;">
<div style="line-height: 13.5pt; margin: 0in;">
<div style="line-height: 13.5pt; margin: 0in 0in 0in 0.25in; text-indent: -0.25in;">
<div style="line-height: 13.5pt; margin: 0in 0in 0in 0.5in; text-indent: -0.25in;">
<div style="line-height: 13.5pt; margin: 0in;">
<br /></div>
</div>
</div>
</div>
</h3>
<h3 style="margin-bottom: .0001pt; margin: 0in;">
<div style="font-size: medium; font-weight: normal; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b>Does replication work over low bandwidth connections? Does it use compression?</b></span></div>
</h3>
<h3 style="margin: 0in 0in 0.0001pt;">
<span style="color: #2a2a2a; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;">Yes, replication does work over low bandwidth connections. For connections over TCP/IP, it uses the compression provided by the protocol but does not provide additional compression. For Web synchronization connections over HTTPS, it uses the compression provided by the protocol and also additional compression of the XML files used to replicate changes.</span></span></h3>
<div>
<span style="color: #2a2a2a; font-size: 10pt; font-weight: normal; line-height: 13.5pt; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<h3 style="margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt; line-height: 13.15pt; text-indent: -0.25in;">Are logins and passwords
replicated?</span></h3>
<div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">No. You could create a DTS package to transfer logins
and passwords from a Publisher to one or more Subscribers.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";"><br /></span></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">What are schemas and how
are they replicated?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Beginning with Microsoft SQL Server 2005,<span class="apple-converted-space"> </span><span class="parameter"><i>schema</i></span><span class="apple-converted-space"> </span>has two meanings:<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">The definition of an object,
such as a CREATE TABLE statement. By default, replication copies the
definitions of all replicated objects to the Subscriber.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">The namespace within which an
object is created: <Database>.<Schema>.<Object>. Schemas are
defined using the CREATE SCHEMA statement.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Replication has the following
default behavior in the New Publication Wizard with respect to schemas and
object ownership:<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">For articles in merge
publications with a compatibility level of 90 or higher, snapshot publications,
and transactional publications: by default, the object owner at the Subscriber
is the same as the owner of the corresponding object at the Publisher. If the
schemas that own objects do not exist at the Subscriber, they are created
automatically.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">For articles in merge
publications with a compatibility level lower than 90: by default, the owner is
left blank and is specified as<span class="apple-converted-space"> </span><strong>dbo</strong><span class="apple-converted-space"> </span>during the creation of the object on
the Subscriber.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">For articles in Oracle
publications: by default, the owner is specified as<span class="apple-converted-space"> </span><strong>dbo</strong>.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l0 level1 lfo1; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">For articles in publications
that use character mode snapshots (which are used for non-SQL Server
Subscribers and SQL Server Compact Subscribers): by default, the owner is
left blank. The owner defaults to the owner associated with the account used by
the Distribution Agent or Merge Agent to connect to the Subscriber.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">The object owner can be changed through the<span class="apple-converted-space"> </span><span class="label"><b>Article
Properties - <</b></span><span class="parameter"><i>Article</i></span><span class="label"><b>></b></span><span class="apple-converted-space"> </span>dialog
box and through </span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">the</span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;"> following</span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;"> stored </span><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">procedures: </span><strong style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">sp_addarticle</strong><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">, </span><strong style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">sp_addmergearticle</strong><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">, </span><strong style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">sp_changearticle</strong><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">,
and</span><span class="apple-converted-space" style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;"> </span><strong style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">sp_changemergearticle</strong><span style="color: #2a2a2a; font-family: Verdana, sans-serif; font-size: 10pt; line-height: 13.5pt;">.</span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">How can grants on the
subscription database be configured to match grants on the publication
database?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">By default, replication does not execute GRANT
statements on the subscription database. If you want the permissions on the
subscription database to match those on the publication database, use one of
the following methods:<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Execute GRANT statements at the
subscription database directly.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Use a post-snapshot script to
execute the statements. <o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l1 level1 lfo2; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Use the stored procedure<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms174360.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_addscriptexec</span></a><span class="apple-converted-space"> </span>to execute the statements.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">What happens to permissions
granted in a subscription database if a subscription is reinitialized?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">By default, objects at the Subscriber are dropped and
recreated when a subscription is reinitialized, which causes all granted
permissions for those objects to be dropped. There are two ways to handle this:<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l2 level1 lfo3; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Reapply the grants after the
reinitialization using the techniques described in the previous section.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: .5in; margin-right: 0in; margin-top: 0in; mso-list: l2 level1 lfo3; tab-stops: list .5in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: Symbol; font-size: 10.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;">·<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Specify that objects should not
be dropped when the subscription is reinitialized. Prior to reinitialization,
either:<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: 1.0in; margin-right: 0in; margin-top: 0in; mso-list: l2 level2 lfo3; tab-stops: list 1.0in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: "Courier New"; font-size: 10.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Execute<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms175980.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_changearticle</span></a><span class="apple-converted-space"> </span>or<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms174386.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_changemergearticle</span></a>.
Specify a value of 'pre_creation_cmd' (<strong>sp_changearticle</strong>) or
'pre_creation_command' (<strong>sp_changemergearticle</strong>) for the
parameter<span class="apple-converted-space"> </span><strong>@property</strong><span class="apple-converted-space"> </span>and a value of 'none', 'delete' or
'truncate' for the parameter<span class="apple-converted-space"> </span><strong>@value</strong>.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin-bottom: 0in; margin-left: 1.0in; margin-right: 0in; margin-top: 0in; mso-list: l2 level2 lfo3; tab-stops: list 1.0in; text-indent: -.25in;">
<!--[if !supportLists]--><span style="color: #2a2a2a; font-family: "Courier New"; font-size: 10.0pt; mso-fareast-font-family: "Courier New";">o<span style="font-family: 'Times New Roman'; font-size: 7pt; line-height: normal;">
</span></span><!--[endif]--><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">In the<span class="apple-converted-space"> </span><span class="label"><b>Article
Properties - <Article></b></span><span class="apple-converted-space"> </span>dialog
box in the<span class="apple-converted-space"> </span><span class="label"><b>Destination
Object</b></span><span class="apple-converted-space"> </span>section, select
a value of<span class="apple-converted-space"> </span><span class="label"><b>Keep
existing object unchanged</b></span>,<span class="apple-converted-space"> </span><span class="label"><b>Delete data. If article has a row filter, delete only data that
matches the filter.</b></span><span class="apple-converted-space"> </span>or<span class="apple-converted-space"> </span><span class="label"><b>Truncate all data
in the existing object</b></span><span class="apple-converted-space"> </span>for
the option<span class="apple-converted-space"> </span><span class="label"><b>Action
if name is in use</b></span>. <o:p></o:p></span></div>
<h3 style="line-height: 13.15pt; margin-bottom: .0001pt; margin: 0in;">
<span style="font-family: Verdana, sans-serif; font-size: 12.5pt; font-weight: normal;"> </span></h3>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt; line-height: 13.15pt;">Why can't I run TRUNCATE
TABLE on a published table?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">TRUNCATE TABLE is a non-logged operation that does
not fire triggers. It is not permitted because replication cannot track the
changes caused by the operation: transactional replication tracks changes
through the transaction log; merge replication tracks changes through triggers
on published tables.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">What is the effect of
running a bulk insert command on a replicated database?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">For transactional replication, bulk inserts are
tracked and replicated like other inserts. For merge replication, you must
ensure that change tracking metadata is updated properly.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">Does replication affect the
size of the transaction log?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Merge replication and snapshot replication do not
affect transaction log size, but transactional replication can. If a database
includes one or more transactional publications, the log is not truncated until
all transactions relevant to the publications have been delivered to the
distribution database. If the transaction log is growing too large, and the Log
Reader Agent is running on a scheduled basis, consider shortening the interval
between runs. Or, set it to run in continuous mode. If it is set to run in
continuous mode (the default), ensure that it is running. <o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Additionally, if you have set the option 'sync with
backup' on the publication database or distribution database, the transaction
log is not truncated until all transactions have been backed up. If the
transaction log is growing too large, and you have this option set, consider
shortening the interval between transaction log backups.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">How do I rebuild indexes or
tables in replicated databases?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">There are a variety of mechanisms for rebuilding
indexes. They can all be used with no special considerations for replication,
with the following exception: primary keys are required on tables in
transactional publications, so you cannot drop and recreate primary keys on
these tables.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">How do I add or change
indexes on publication and subscription databases?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Indexes can be added at the Publisher or Subscribers
with no special considerations for replication (be aware that indexes can
affect performance). CREATE INDEX and ALTER INDEX are not replicated, so if you
add or change an index at, for example, the Publisher, you must make the same
addition or change at the Subscriber if you want it reflected there.<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";"><br /></span></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">How do I move or rename
files for databases involved in replication?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">In versions of SQL Server prior to SQL Server
2005, moving or renaming database files required detaching and reattaching the
database. Because a replicated database cannot be detached, replication had to
be removed from these databases first. Beginning with SQL Server 2005, you can
move or rename files without detaching and re-attaching the database, with no
effect on replication. <o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">How do I drop a table that
is being replicated?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">First drop the article from the publication using<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms173832.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_droparticle</span></a>,<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms179926.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_dropmergearticle</span></a>,
or the<span class="apple-converted-space"> </span><span class="label"><b>Publication
Properties - <Publication></b></span><span class="apple-converted-space"> </span>dialog
box, and then drop it from the database using<span class="apple-converted-space"> </span></span><span class="code"><span style="color: darkgreen; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: Consolas;">DROP <Object></span></span><span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">. You cannot drop articles from snapshot or
transactional publications after subscriptions have been added; you must drop
the subscriptions first. <o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">How do I add or drop
columns on a published table?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">SQL Server supports a wide variety of schema changes
on published objects, including adding and dropping columns. For example,
execute ALTER TABLE … DROP COLUMN at the Publisher, and the statement is
replicated to Subscribers and then executed to drop the column. Subscribers
running versions of SQL Server prior to SQL Server 2005 support
adding and dropping columns through the stored procedures<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms189464.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_repladdcolumn</span></a><span class="apple-converted-space"> </span>and<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms190489.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_repldropcolumn</span></a>.
<o:p></o:p></span></div>
<h2 style="line-height: 13.15pt; margin-top: 0in;">
<span style="font-family: Verdana, sans-serif; font-size: 10pt; font-weight: normal;"> </span></h2>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">How do I add a table to an
existing publication?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">It is not necessary to stop activity on the
publication or subscription databases in order to add a table (or another
object). Add a table to a publication through the<span class="label"><b>Publication
Properties - <Publication></b></span><span class="apple-converted-space"> </span>dialog
box or the stored procedures<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms173857.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_addarticle</span></a><span class="apple-converted-space"> </span>and<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms174329.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_addmergearticle</span></a>.
<o:p></o:p></span></div>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<br /></div>
<h2 style="line-height: 13.15pt; margin: 0in 0in 0.0001pt; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;">How do I remove a table
from a publication?</span></h2>
<div style="line-height: 13.5pt; margin-bottom: .0001pt; margin: 0in;">
<span style="color: #2a2a2a; font-family: "Verdana","sans-serif"; font-size: 10.0pt; mso-bidi-font-family: "Segoe UI";">Remove a table from the publication using<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms173832.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_droparticle</span></a>,<span class="apple-converted-space"> </span><a href="http://msdn.microsoft.com/en-in/library/ms179926.aspx"><span style="color: #03697a; text-decoration: none; text-underline: none;">sp_dropmergearticle</span></a>,
or the<span class="apple-converted-space"> </span><span class="label"><b>Publication
Properties - <Publication></b></span><span class="apple-converted-space"> </span>dialog
box. You cannot drop articles from snapshot or transactional publications after
subscriptions have been added; you must drop the subscriptions first. <o:p></o:p></span></div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com3tag:blogger.com,1999:blog-4700053866498083794.post-17153062647796815322014-09-02T16:31:00.001+05:302014-09-02T21:00:07.712+05:30Overview of DBMS Three Level Architecture - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">An early proposal for a standard terminology and general architecture database a system was produced in 1971 by the DBTG (Data Base Task Group) appointed by the Conference on data Systems and Languages. The DBTG recognized the need for a two level approach with a system view called the schema and user view called subschema. The American National Standard Institute terminology and architecture in 1975.ANSI-SPARC recognized the need for a three level approach with a system catalog.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><o:p style="margin: 0px; padding: 0px;"></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<b style="margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;">There are following three levels or layers of DBMS architecture:<o:p style="margin: 0px; padding: 0px;"></o:p></span></b></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<b style="margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;"><o:p style="margin: 0px; padding: 0px;"></o:p></span></b></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">1. Extenal Level</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">2. Conceptual Level</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">3. Internal Level</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><o:p style="margin: 0px; padding: 0px;"></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="font-weight: bold; margin: 0px; padding: 0px;">1. </span><b style="margin: 0px; padding: 0px;">External Level</b>: - External Level is described by a schema i.e. it consists of definition of logical records and relationship in the external view. It also contains the method of deriving the objects in the external view from the objects in the conceptual view.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><o:p style="margin: 0px; padding: 0px;"></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="font-weight: bold; margin: 0px; padding: 0px;">2.</span> <b style="margin: 0px; padding: 0px;">Conceptual Level</b>: - Conceptual Level represents the entire database. Conceptual schema describes the records and relationship included in the Conceptual view. It also contains the method of deriving the objects in the conceptual view from the objects in the internal view.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><o:p style="margin: 0px; padding: 0px;"></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="font-weight: bold; margin: 0px; padding: 0px;">3. </span><b style="margin: 0px; padding: 0px;">Internal Level: - </b>Internal level indicates hoe the data will be stored and described the data structures and access method to be used by the database. It contains the definition of stored record and method of representing the data fields and access aid used.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><o:p style="margin: 0px; padding: 0px;"></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16px; margin-bottom: 10px; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="margin: 0px; padding: 0px;"></span>A mapping between external and conceptual views gives the correspondence among the records and relation ship of the conceptual and external view. The external view is the abstraction of conceptual view which in turns is the abstraction of internal view. It describes the contents of the database as perceived by the user or application program of that view. A mapping between conceptual records from the physical database.</span></div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com1tag:blogger.com,1999:blog-4700053866498083794.post-19426971162868193872014-08-14T01:32:00.002+05:302014-09-02T21:00:24.506+05:30SQL Server Integration Services - SSIS DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid; text-align: left;">
<span style="line-height: 39.9466667175293px;"><span style="font-family: Verdana, sans-serif; font-size: small;"><b>SQL Server Integration Services</b></span></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<div style="text-align: left;">
<span style="font-family: Verdana, sans-serif;">In this blog<a href="https://www.blogger.com/null" name="_GoBack"></a> describe the concept of SQL Server Integrated Services (SSIS). SQL Server Integration Services (SSIS) is a tool that we use to perform ETL (extract, transform, and load) operations of data. Here, we explain the features of SQL server integration services, advantages and disadvantages of SSIS.</span></div>
<span style="line-height: 34.2400016784668px;"><b><span style="font-family: Verdana, sans-serif;">Introduction</span></b></span><br />
<span style="font-family: Verdana, sans-serif;">SSIS stands for SQL Server Integration Services (SSIS). SQL Server Integration Services (SSIS) is a tool that we use to perform ETL (extract, transform, and load) operations of data. Also SSIS is used to perform operations like loading the data based on the need, performing different transformations on the data like doing calculations (Sum, Average, etc.) and to define a workflow of how the process should flow and perform some tasks on the day to day activity.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">Microsoft Integration Services is a platform for building enterprise-level data integration and data transformations solutions. You use Integration Services to solve complex business problems by copying or downloading files, updating data warehouses, mining data, and so on.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;"><span class="auto-style1" style="color: #2e74b5;"><span style="line-height: 18.546667098999023px;">Note</span></span>: <i>SQL server integration services is not for SQL Server express editions. It required enterprise edition.<o:p></o:p></i></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="line-height: 34.2400016784668px;"><b><span style="font-family: Verdana, sans-serif;">Features of SSIS</span></b></span><br />
<span style="font-family: Verdana, sans-serif;">The SSIS Import/Export Wizard lets the user create packages that move data from a single data source to a destination with no transformations. The Wizard can quickly move data from a variety of source types to a variety of destination types, including text files and other SQL Server instances.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">Developers tasked with creating or maintaining SSIS packages use a visual development tool based on Microsoft Visual Studio called the SQL Server Business Intelligence Development Studio (BIDS). It allows users to edit SSIS packages using a drag-and-drop user interface. A scripting environment in which to write programming code is also available in the tool. A package holds a variety of elements that define a workflow. Upon package execution, the tool provides color-coded, real-time monitoring.</span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Connections</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">A connection includes the information necessary to connect to a particular data source. Tasks can reference the connection by its name, allowing the details of the connection to be changed or configured at run time.</span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Tasks</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">A task is an atomic work unit that performs some action. There are a couple of dozen tasks that ship in the box, ranging from the file system task (which can copy or move files) to the data transformation task. The data transformation task actually copies data; it implements the ETL features of the product</span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Precedence constraints</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">Tasks are linked by precedence constraints. The precedence constraint preceding a particular task must be met before that task executes. The run time supports executing tasks in parallel if their precedence constraints so allow. Constraints may otherwise allow different paths of execution depending on the success or failure of other tasks. Together with the tasks, precedence constraints comprise the workflow of the package.</span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Event handlers</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">A workflow can be designed for a number of events in the different scopes where they might occur. In this way, tasks may be executed in response to happenings within the package —such as cleaning up after errors.</span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Variables</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">Tasks may reference variables to store results, make decisions, or affect their configuration.</span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Parameters (SQL Server 2012 Integration Services)</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">Parameters allow you to assign values to properties within packages at the time of package execution. You can project parameters and package parameters. In general, if you are deploying a package using the package deployment model, you should use configurations instead of parameters.</span><br />
<span style="line-height: 34.2400016784668px;"><b><span style="font-family: Verdana, sans-serif;">DTS</span></b></span><br />
<span style="font-family: Verdana, sans-serif;">Data Transformation Services (also known as DTS) was the predecessor to the SSIS system. It is a set of objects using an ETS tool (which means a tool that extracts, transforms, and loads information into a database for warehousing) in order to extract, transform, and load this information to and/or from a database.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<span style="font-family: Verdana, sans-serif;">DTS was an original component of the Microsoft SQL Server 2000, and at its inception, was always used with the SQL Server databases. Even though it was an integral part of the server, DTS was also easily used independently from the Microsoft server, in conjunction with other databases. It is capable of transforming and loading data from heterogeneous sources, using OLE DB, ODBC, or files specified as text only, into any database that supports them.</span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="line-height: 34.2400016784668px;"><span style="font-family: Verdana, sans-serif; font-size: small;">Why use SSIS instead of DTS?</span></span></h2>
<div class="MsoListParagraphCxSpFirst" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 0.0001pt 0.5in; text-indent: -0.25in;">
<div style="text-align: justify;">
<span style="text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;">It is likely that Microsoft will discontinue the support for DTS/ SQL SERVER </span></span></div>
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif;">2000 later or sooner, so it better to migrate your DTS.</span></div>
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif; line-height: normal; text-indent: -0.25in;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="line-height: normal; text-indent: -0.25in;"> </span><span style="text-indent: -0.25in;">Separation of Data Flow Engine from the Control Flow Engine or SSIS</span></span></div>
<div style="text-align: justify;">
<span style="text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"> Runtime Engine and hence improves the performance by a significant</span></span></div>
<div style="text-align: justify;">
<span style="text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"> amount.</span></span></div>
<div style="text-align: justify;">
<span style="text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
</div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 0.0001pt 0.5in; text-indent: -0.25in;">
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif;">The DTS uses ELTL strategy (i.e. they have first to load data from files to</span></div>
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> data base before making transformations) while SSIS uses ETL strategy.</span></div>
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
</div>
<div class="MsoListParagraphCxSpLast" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt 0.5in; text-indent: -0.25in;">
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Package Configuration. Using expressions and configurations it is much</span></div>
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> easier to make packages dynamic.</span></div>
</div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="line-height: 34.2400016784668px;"><span style="font-family: Verdana, sans-serif; font-size: small;">Advantages of SSIS</span></span></h2>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif; font-size: small;">Easier to maintain</span></span></h2>
<div>
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif; font-size: small;">Highly integrated with SQL Server and visual studio</span></span></h2>
<div>
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif; font-size: small;">Package Configuration. Much better functions for dynamically settings or retrieving configuration settings for packages as per other ETL tools.</span></span></h2>
<div>
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif; font-size: small;">Service Oriented Architecture. Obviously being in Visual Studio and having access to .Net code makes it compatible with web services.</span></span></h2>
<div>
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif; font-size: small;">You can use the SQL Server Destination instead of OLE DB which allows you to load data into SQL faster.</span></span></h2>
<div>
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif; font-size: small;">You remove network as a bottleneck for insertion of data by SSIS into SQL</span></span></h2>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="line-height: 34.2400016784668px;"><span style="font-family: Verdana, sans-serif; font-size: small;">Disadvantages of SSIS</span></span></h2>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif; font-size: small;">If you have a number of SSIS packages that need to run in parallel and/or need to use a lot of memory (especially ones that have a lot of complex transforms), you’d have memory allocation conflicts between SQL and SSIS. SQL will typically win this battle which means SSIS pages to file. Once SSIS pages to file, you will have suboptimal processing by SSIS – i.e. don’t do it!</span></span></h2>
<div>
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<h2 style="background-color: white; line-height: 18.546667098999023px; margin: 2pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-weight: normal; line-height: 15.693333625793457px; text-indent: -0.25in;"><span style="font-family: Verdana, sans-serif; font-size: small;">The same can be said for CPU – you need to ensure there are enough processors allocated for SSIS and SQL separately. If the two compete, SQL will typically win which will mean SSIS will run much more slowly.</span></span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 15.693333625793457px; margin: 0in 0in 8pt;">
<br /></div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com3tag:blogger.com,1999:blog-4700053866498083794.post-73013910296892355182014-08-14T01:25:00.004+05:302014-09-02T21:00:38.515+05:30OOPS in javascript - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<b><span style="font-family: Verdana, sans-serif;">Introduction<o:p></o:p></span></b></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">Javascript is Prototype-based programming and a style of object-oriented programming in which classes are not present. It can support oops because it support inheritance through prototyping as well as properties and methods </span><span style="font-family: Verdana, sans-serif;">Object oriented programming in JS know as Prototype-based programming.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraph" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt 0.5in; text-indent: -0.25in;">
<span style="font-family: Verdana, sans-serif;"><b>a.<span style="font-weight: normal; line-height: normal;"> </span></b><b>Creating Class in javascript<o:p></o:p></b></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.25in;">
<span style="font-family: Verdana, sans-serif;">Following syntax is used for declaring class in JS</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt; text-indent: 0.25in;">
<span style="font-family: Verdana, sans-serif;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: blue;">function</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> Emp() {<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> alert(</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: #a31515;">'Emp instantiated'</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">);<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.25in;">
<span style="font-family: Verdana, sans-serif;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; line-height: 14.566667556762695px;"> </span>}</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.25in;">
<span style="font-family: Verdana, sans-serif;">Here Emp can be act as Class in JS</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.25in;">
<span style="font-family: Verdana, sans-serif;">Body of Emp act as constructor as called as soon we create object of class.</span></div>
<ol start="2" style="background-color: white; margin-bottom: 0in; margin-top: 0in;" type="a">
<li class="MsoNormal" style="line-height: 16.866666793823242px; margin: 0in 0in 10pt;"><b><span style="font-family: Verdana, sans-serif;">Creating Objects of Emp Class<o:p></o:p></span></b></li>
</ol>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.5in;">
<span style="font-family: Verdana, sans-serif;">Using following syntax we can creating object of Emp class</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.5in;">
<span style="font-family: Verdana, sans-serif;">var Emp1 = new Emp();</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.5in;">
<span style="font-family: Verdana, sans-serif;">As soon we create object of Emp class it constructor we be called</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.5in;">
<span style="font-family: Verdana, sans-serif;">Here above function Emp would be treated as class in JS</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-indent: 0.25in;">
<span style="font-family: Verdana, sans-serif;"><img alt="Object Oriented Javascript" src="http://www.mindstick.com/Articles/812c80cd-fbac-4589-92f9-3ebd253857c8/Images/image001.png" style="border: 0px;" /></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpFirst" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in; text-indent: -0.25in;">
<span style="font-family: Verdana, sans-serif;">c.<span style="line-height: normal;"> </span>Running the code</span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><img alt="Object Oriented Javascript" src="http://www.mindstick.com/Articles/812c80cd-fbac-4589-92f9-3ebd253857c8/Images/image002.png" style="border: 0px;" /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;">Alert will be shown on page load of web form.</span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in; text-indent: -0.25in;">
<span style="font-family: Verdana, sans-serif;">d.<span style="line-height: normal;"> </span>Properties of class</span></div>
<div class="MsoListParagraphCxSpLast" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt 0.5in;">
<span style="font-family: Verdana, sans-serif;">We can define properties of class in following way</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt; text-indent: 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt 0.5in; text-indent: 0.5in;">
<span style="font-family: Verdana, sans-serif;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: blue;">function</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> Emp(firstname) {<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> alert(</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: #a31515;">'Emp instantiated'</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">);<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> </span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: blue;">this</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">.firstname = firstname;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoListParagraphCxSpFirst" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; font-family: Verdana, sans-serif; line-height: 14.566667556762695px;"> }</span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpLast" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt 1in; text-indent: -0.5in;">
<span style="font-family: Verdana, sans-serif;">i)<span style="line-height: normal;"> </span>Passing value to properties</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: blue;">var</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> Emp1 = </span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: blue;">new</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> Emp(</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: #a31515;">"Devesh is Emp of GENPACT INDIA"</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">);<o:p></o:p></span></span></div>
<div class="MsoListParagraphCxSpFirst" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; line-height: 14.566667556762695px;"> alert(Emp1.firstname);</span><span style="line-height: 14.566667556762695px;"><o:p></o:p></span></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; line-height: 14.566667556762695px;"> <o:p></o:p></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 1in; text-indent: -0.5in;">
<span style="font-family: Verdana, sans-serif;">ii)<span style="line-height: normal;"> </span>Snap for defining properties</span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><img alt="Object Oriented Javascript" src="http://www.mindstick.com/Articles/812c80cd-fbac-4589-92f9-3ebd253857c8/Images/image003.png" style="border: 0px;" /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><img alt="Object Oriented Javascript" src="http://www.mindstick.com/Articles/812c80cd-fbac-4589-92f9-3ebd253857c8/Images/image004.png" style="border: 0px;" /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 1in; text-indent: -0.5in;">
<span style="font-family: Verdana, sans-serif;"><b>iii)<span style="font-weight: normal; line-height: normal;"> </span></b><b>Complete code<o:p></o:p></b></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><img alt="Object Oriented Javascript" src="http://www.mindstick.com/Articles/812c80cd-fbac-4589-92f9-3ebd253857c8/Images/image005.png" style="border: 0px;" /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 1in; text-indent: -0.5in;">
<span style="font-family: Verdana, sans-serif;"><b>iv)<span style="font-weight: normal; line-height: normal;"> </span></b><b>Running code<o:p></o:p></b></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoListParagraphCxSpMiddle" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<span style="font-family: Verdana, sans-serif;"><img alt="Object Oriented Javascript" src="http://www.mindstick.com/Articles/812c80cd-fbac-4589-92f9-3ebd253857c8/Images/image006.png" style="border: 0px;" /></span></div>
<div class="MsoListParagraphCxSpLast" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt 0.5in;">
<span style="font-family: Verdana, sans-serif;">When we run the code we got alert of the string which we are passing to class of Emp.</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt; text-indent: 0.5in;">
<span style="font-family: Verdana, sans-serif;"> <span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: blue;">var</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> Emp1 = </span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: blue;">new</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;"> Emp(</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; color: #a31515;">"Devesh is Emp of GENPACT INDIA"</span><span style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial;">);<o:p></o:p></span></span></div>
<div class="MsoListParagraphCxSpFirst" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 0.0001pt 0.5in;">
<br /></div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com1tag:blogger.com,1999:blog-4700053866498083794.post-42868889537570776882014-04-24T02:54:00.001+05:302014-09-02T21:01:05.750+05:30Most VVI SQL Server Interview Questions and Answered for Fresher and Experienced - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="article-header" style="background-color: white; display: table; font-family: Verdana, Geneva, sans-serif; font-size: 14px; margin: 0px; outline: none; padding: 0px; text-align: center; width: 750px;">
<h1 class="title entry-title" itemprop="name" style="display: table-cell; margin: 0px; padding: 0px 40px 0px 0px; position: relative; text-align: justify; vertical-align: middle; width: 710px;">
<span style="font-family: Verdana, sans-serif; font-size: small;">What is difference between DELETE and TRUNCATE commands?</span></h1>
</div>
<div class="article-content entry-content" itemprop="articleBody" style="clear: both; margin: 10px auto 5px; outline: none; padding: 0px; text-align: justify;">
<div dir="ltr" style="background-color: white; line-height: 1.4; margin: 0px; outline: none; padding: 0px; text-align: left;" trbidi="on">
<span style="font-family: Verdana, sans-serif;">Delete command removes the rows from a table based on the condition that we provide with a WHERE clause. Truncate will actually remove all the rows from a table and there will be no data in the table after we run the truncate command. </span><br />
<h2 style="margin: 0.75em 0px; padding: 0px; position: relative; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: small;">TRUNCATE (<span style="line-height: 1.4;">TRUNCATE TABLE TableName</span><span style="line-height: 1.4;">)</span></span></h2>
<ol class="tech-ol-123" style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0.5em 0px; outline: none; padding: 0px 0px 0px 2em;">
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">TRUNCATE is faster and uses fewer system and transaction log resources than DELETE.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">TRUNCATE removes the data by deallocating the data pages used to store the table's data, and only the page deallocations are recorded in the transaction log.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">TRUNCATE removes all rows from a table, but the table structure, its columns, constraints, indexes and so on, remains. The counter used by an identity for new rows is reset to the seed for the column.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">You cannot use TRUNCATE TABLE on a table referenced by a FOREIGN KEY constraint. Because TRUNCATE TABLE is not logged, it cannot activate a trigger.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">TRUNCATE cannot be rolled back.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">TRUNCATE is DDL Command.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">TRUNCATE Resets identity of the table</span></li>
</ol>
<h2 style="margin: 0.75em 0px; padding: 0px; position: relative; text-align: left;">
<span style="font-family: Verdana, sans-serif; font-size: small;">DELETE ( <code><span style="font-family: Verdana, sans-serif;">DELETE FROM TableName)</span></code></span></h2>
<ol class="tech-ol-123" style="line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0.5em 0px; outline: none; padding: 0px 0px 0px 2em;">
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">DELETE removes rows one at a time and records an entry in the transaction log for each deleted row.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">If you want to retain the identity counter, use DELETE instead. If you want to remove table definition and its data, use the DROP TABLE statement.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">DELETE Can be used with or without a WHERE clause</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">DELETE Activates Triggers.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">DELETE can be rolled back.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">DELETE is DML Command.</span></li>
<li style="margin: 0px; outline: none; padding: 0px;"><span style="font-family: Verdana, sans-serif;">DELETE does not reset identity of the table.</span></li>
</ol>
<span style="font-family: Verdana, sans-serif;">Note: DELETE and TRUNCATE both can be rolled back when surrounded by TRANSACTION if the current session is not closed. If TRUNCATE is written in Query Editor surrounded by TRANSACTION and if session is closed, it can not be rolled back but DELETE can be rolled back.</span></div>
<div dir="ltr" style="background-color: white; line-height: 1.4; margin: 0px; outline: none; padding: 0px; text-align: left;" trbidi="on">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div dir="ltr" style="background-color: white; line-height: 1.4; margin: 0px; outline: none; padding: 0px; text-align: left;" trbidi="on">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div dir="ltr" style="margin: 0px; outline: none; padding: 0px; text-align: left;" trbidi="on">
<div class="adsense-aside" style="background-color: white; font-family: Verdana, Geneva, sans-serif; line-height: normal; margin: 0px; outline: none; padding: 15px 5px 0px 15px; position: absolute; right: 5px; text-align: center; top: 5px;">
<div class="adsense" data-client="pub-0613972636565397" data-format="wideskyscraper" data-host="pub-1556223355139109" data-type="" style="margin: 5px 0px; outline: none; padding: 0px;">
</div>
</div>
<div class="article-content entry-content" itemprop="articleBody" style="clear: both; margin: 10px auto 5px; outline: none; padding: 0px; text-align: justify;">
<div dir="ltr" style="margin: 0px; outline: none; padding: 0px; text-align: left;" trbidi="on">
<h2 style="background-color: white; font-family: Verdana, Geneva, sans-serif; font-weight: bolder; line-height: 1.4; margin: 0.75em 0px; padding: 0px; position: relative;">
<span style="font-size: small;">What's the difference between a primary key and a unique key?</span></h2>
<span style="background-color: white; font-family: Verdana, Geneva, sans-serif; line-height: 1.4;">Primary key and Unique key enforces uniqueness of the column on which they are defined.The different between primary key and unique are below.</span><br />
<br />
<ol style="background-color: white; font-family: Verdana, Geneva, sans-serif; line-height: 1.4; list-style-image: initial; list-style-position: initial; margin: 0.5em 0px; outline: none; padding: 0px 0px 0px 2em;">
<li style="margin: 0px; outline: none; padding: 0px;">Primary Key can't accept null values but where as unique key can accept null value.</li>
<li style="margin: 0px; outline: none; padding: 0px;">By default, Primary key is clustered index but By default, Unique key is a unique non-clustered index.</li>
<li style="margin: 0px; outline: none; padding: 0px;"><div style="margin: 0px; outline: none; padding: 0px;">
We can have only one Primary key in a table where as we can have more than one unique key in table.</div>
</li>
</ol>
<div style="background-color: white; font-family: Verdana, Geneva, sans-serif;">
<span style="line-height: 19.600000381469727px;"><br /></span></div>
<div style="background-color: white; font-family: Verdana, Geneva, sans-serif;">
<span style="line-height: 19.600000381469727px;"><b>What is View ? </b></span></div>
<div style="background-color: white; font-family: Verdana, Geneva, sans-serif;">
<span style="line-height: 19.600000381469727px;"><b><br /></b></span></div>
<div style="background-color: white; font-family: Verdana, Geneva, sans-serif;">
<div style="line-height: 19.600000381469727px; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">A MS SQL Server 2008 view can be thought of as a stored query accessible as a virtual table. It can be used for retrieving data as well as updating or deleting rows. Views in MS SQL Server provide a preset way to view data from one or more tables. They may also include aggregate fields (e.g., COUNT, SUM). Views allow your users to query a single object which behaves like a table and contains the needed joins and fields you have specified. In this way, a simple query (SELECT * FROM ViewName) can produce a more refined result which can serve as a report and answer business questions.</span></div>
<div style="line-height: 19.600000381469727px; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div style="line-height: 19.600000381469727px; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Rows updated or deleted in the MS SQL Server 2008 view are updated or deleted in the table the view was created with. It should also be noted that as data in the original table changes, so does the data in the view-as views are the way to look at parts of the original table. The results of using a view are not permanently stored in the database. The data accessed through a view is actually constructed using a standard T-SQL select command and can come from one to many different base tables or even other views. </span></div>
<div style="line-height: 19.600000381469727px; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div style="line-height: 19.600000381469727px; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><b>Two main purposes of creating a MS SQL Server 2008 view are</b></span><br />
<span style="font-family: Verdana, sans-serif;">1.) provide a security mechanism which restricts users to a certain subset of data</span><br />
<span style="font-family: Verdana, sans-serif;">2.)provide a mechanism for developers to customize how users can logically view the data.</span></div>
</div>
<div style="background-color: white; font-family: Verdana, Geneva, sans-serif; line-height: 19.600000381469727px; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<br /></div>
<div style="font-family: Verdana, Geneva, sans-serif; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="background-color: white;"><b>What are Triggers and what are their types ?</b></span></div>
<div style="font-family: Verdana, Geneva, sans-serif; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="background-color: white;"><b><br style="line-height: normal;" /></b><span style="line-height: normal;">A trigger defines a set of actions that are performed in response to an insert, update, or delete operation on a specified table. When such an SQL operation is executed, the trigger is said to have been activated. Triggers are optional and are defined using the CREATE TRIGGER statement.</span><br style="line-height: normal;" /><br style="line-height: normal;" /><span style="line-height: normal;">Triggers can be used, along with referential constraints and check constraints, to enforce data integrity rules. Triggers can also be used to cause updates to other tables, automatically generate or transform values for inserted or updated rows, or invoke functions to perform tasks such as issuing alerts.</span></span></div>
<div style="font-family: Verdana, Geneva, sans-serif; margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="background-color: white;"><span style="line-height: normal;"><br /></span></span></div>
<div style="margin: 0px; outline: none; padding: 0px; text-align: justify;">
<span style="text-align: left;"><span style="font-family: Verdana, Geneva, sans-serif;">Further triggers divided into two parts </span></span></div>
<div style="margin: 0px; outline: none; padding: 0px; text-align: justify;">
<ol style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">Data Manipulation Language (DML) and</span></li>
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">Data Definition Language (DDL) events.</span></li>
</ol>
<div style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<span style="font-family: Verdana; outline: none 0px;">The benefits derived from triggers is based in their events driven nature. Once created, the trigger automatically fires without user intervention based on an event in the database.<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">A) Using DML Triggers: </b><br style="outline: none 0px;" /><br style="outline: none 0px;" />DML triggers are invoked when any DML commands like INSERT, DELETE, and UPDATE happen on the data of a table and or view.<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Points to remember:</b></span></div>
<ol style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">DML triggers are powerful objects for maintaining database integrity and consistency.</span></li>
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">DML triggers evaluate data before it has been committed to the database.</span></li>
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">During this evaluation following actions are performed.</span><ul style="outline: none 0px;">
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">Compare before and after versions of data</span></li>
<li style="outline: none 0px;">Roll back invalid modification</li>
<li style="outline: none 0px;">Read from other tables ,those in other database</li>
<li style="outline: none 0px;">Modify other tables, including those in other database.</li>
<li style="outline: none 0px;">Execute local and remote stored procedures.</li>
</ul>
<span style="font-family: Verdana; outline: none 0px;"> </span></li>
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">We cannot use following commands in DML trigger</span><ul style="outline: none 0px;">
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">ALTER DATABASE</span></li>
<li style="outline: none 0px;">CREATE DATABASE</li>
<li style="outline: none 0px;">DISK DATABASE</li>
<li style="outline: none 0px;">LOAD DATABASE</li>
<li style="outline: none 0px;">RESTORE DATABASE</li>
</ul>
<span style="font-family: Verdana; outline: none 0px;"> </span></li>
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">Using the sys.triggers catalog view is a good way to list all the triggers in a database. To use it, we simply open a new query editor window in SSMS and select all the rows from the view as shown below;<br style="outline: none 0px;" />select * from sys.triggers</span></li>
</ol>
<div style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<span style="font-family: Verdana; outline: none 0px;">So let us create DML trigger.<br style="outline: none 0px;" /><br style="outline: none 0px;" />You can create and manage triggers in SQL Server Management Studio or directly via Transact-SQL (T-SQL) statements.<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">1) Using AFTER triggers:</b></span></div>
<ul style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">An AFTER trigger is the original mechanism that SQL Server created to provide an automated response to data modifications</span></li>
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">AFTER triggers fire after the data modification statement completes but before the statement's work is committed to the databases.</span></li>
<li style="outline: none 0px;"><span style="font-family: Verdana; outline: none 0px;">The trigger has the capability to roll back its actions as well as the actions of the modification statement that invoked it.</span></li>
</ul>
<div style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<span style="font-family: Verdana; outline: none 0px;">For all examples shared below I have used Pubs database. You can download its msi file from here and then attach .mdf file in your SQL Sever 2008.<br style="outline: none 0px;" /><br style="outline: none 0px;" /><a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyId=06616212-0356-46A0-8DA2-EEBC53A68034&displaylang=en" style="color: #0066cc; cursor: pointer; font-family: Calibri; outline: none 0px; text-decoration: none;">http://www.microsoft.com/downloads/en/details.aspx?<br style="outline: none 0px;" />FamilyId=06616212-0356-46A0-8DA2-EEBC53A68034&displaylang=en</a><span style="color: #333333;"> </span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">CREATE</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> tr_au_upd <span style="color: blue; outline: none 0px;">ON</span> authors</span><span style="color: blue; font-family: Verdana; outline: none 0px;">AFTER</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">UPDATE,INSERT,DELETE</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">AS</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> </span><span style="color: blue; font-family: Verdana; outline: none 0px;">PRINT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: red; outline: none 0px;">'TRIGGER OUTPUT'</span> <span style="color: grey; outline: none 0px;">+</span> <span style="color: magenta; outline: none 0px;">CONVERT</span><span style="color: grey; outline: none 0px;">(</span><span style="color: blue; outline: none 0px;">VARCHAR</span><span style="color: grey; outline: none 0px;">(</span>5<span style="color: grey; outline: none 0px;">),</span><span style="color: magenta; outline: none 0px;">@@ROWCOUNT</span><span style="color: grey; outline: none 0px;">)</span></span><span style="color: grey; font-family: Verdana; outline: none 0px;">+</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: red; outline: none 0px;">'ROW UPDATED'</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">GO</span></div>
<div class="MsoNormal" style="background-color: white; font-family: 'segoe UI'; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="color: #333333; font-family: Verdana; outline: none 0px;">UPDATE Statement</span><span style="color: blue; font-family: Verdana; outline: none 0px;">UPDATE</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> authors</span><span style="color: blue; font-family: Verdana; outline: none 0px;">SET</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> au_fname <span style="color: grey; outline: none 0px;">=</span> au_fname</span><span style="color: blue; font-family: Verdana; outline: none 0px;">WHERE</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">state</span> <span style="color: grey; outline: none 0px;">=</span><span style="color: red; outline: none 0px;">'UT'</span></span><span style="font-family: Verdana; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />Result:<br style="outline: none 0px;" />----------------------------------------------------<br style="outline: none 0px;" />TRIGGER OUTPUT2ROW UPDATED<br style="outline: none 0px;" /><br style="outline: none 0px;" />(2 row(s) affected)<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Point to remember:</b><br style="outline: none 0px;" />1) If we have a constraint and trigger defined on the same column, any violations to the constraint abort the statement and the trigger execution does not occur. For example, if we have a foreign key constraint on a table that ensures referential integrity and a trigger that that does some validation on that same foreign key column then the trigger validation will only execute if the foreign key validation is successful.<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Can we create more than one trigger on one table?</b></span></div>
<ul style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">We can create more than one trigger on a table for each data modification action. In other words, we can have multiple triggers responding to an INSERT, an UPDATE, or a DELETE command.<br style="outline: none 0px;" /> </span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">The sp_settriggerorder procedure is the tool we use to set the trigger order. This procedure takes the trigger name, order value (FIRST, LAST, or NONE), and action (INSERT, UPDATE, or DELETE) as parameters.<br style="outline: none 0px;" />sp_settriggerorder tr_au_upd, FIRST, 'UPDATE'<br style="outline: none 0px;" /> </span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">AFTER triggers can only be placed on tables, not on views.<br style="outline: none 0px;" /> </span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">A single AFTER trigger cannot be placed on more than one table.<br style="outline: none 0px;" /> </span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">The text, ntext, and image columns cannot be referenced in the AFTER trigger logic.</span></div>
</li>
</ul>
<div class="MsoNormal" style="background-color: white; font-family: 'segoe UI'; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana; outline: none 0px;"><b style="outline: none 0px;">How to see inserted and deleted rows through Trigger:</b></span></div>
<ul style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">We can find rows modified in the inserted and deleted temporary tables.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">For AFTER trigger, these temporary memories –resident tables contains the rows modified by the statement.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">With the INSTEAD OF trigger, the inserted and deleted tables are actually temporary tables created on-the-fly.</span></div>
</li>
</ul>
<div class="MsoNormal" style="background-color: white; font-family: 'segoe UI'; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana; outline: none 0px;">Lets us try and see how this works;<br style="outline: none 0px;" />a) Create a table titles_copy</span><br />
<span style="color: #333333; font-family: Verdana; outline: none 0px;"><br style="outline: none 0px;" /></span><span style="color: blue; font-family: Verdana; outline: none 0px;">SELECT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: grey; outline: none 0px;">*</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">INTO</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> titles_copy</span><span style="color: blue; font-family: Verdana; outline: none 0px;">FROM</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> titles</span><span style="color: blue; font-family: Verdana; line-height: 20px; outline: none 0px;">GO</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"><br style="outline: none 0px;" />b) Create a trigger on this table</span><span style="color: blue; font-family: Verdana; outline: none 0px;">CREATE</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> tc_tr <span style="color: blue; outline: none 0px;">ON</span> titles_copy</span><span style="color: blue; font-family: Verdana; outline: none 0px;">FOR</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">INSERT</span> <span style="color: grey; outline: none 0px;">,</span> <span style="color: blue; outline: none 0px;">DELETE</span> <span style="color: grey; outline: none 0px;">,</span><span style="color: blue; outline: none 0px;">UPDATE</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">AS<br style="outline: none 0px;" />PRINT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: red; outline: none 0px;">'Inserted'</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">SELECT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> title_id<span style="color: grey; outline: none 0px;">,</span> <span style="color: blue; outline: none 0px;">type</span><span style="color: grey; outline: none 0px;">,</span> price <span style="color: blue; outline: none 0px;">FROM</span> inserted <span style="color: green; outline: none 0px;">-- THIS IS TEMPORARY TABLE</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">PRINT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: red; outline: none 0px;">'Deleted'</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">SELECT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> title_id<span style="color: grey; outline: none 0px;">,</span> <span style="color: blue; outline: none 0px;">type</span><span style="color: grey; outline: none 0px;">,</span> price <span style="color: blue; outline: none 0px;">FROM</span> deleted <span style="color: green; outline: none 0px;">-- THIS IS TEMPORARY TABLE</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">--ROLLBACK</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRANSACTION</span></span><span style="font-family: Verdana; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />c) Let us UPDATE rows. After which trigger will get fired.<br style="outline: none 0px;" /><br style="outline: none 0px;" />We have written two statements in trigger, so these rows get printed. The inserted and deleted tables are available within the trigger after INSERT, UPDATE, and DELETE.</span><br />
<span style="font-family: Verdana; outline: none 0px;"><br style="outline: none 0px;" /></span><span style="color: blue; font-family: Verdana; outline: none 0px;">PRINT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: red; outline: none 0px;">'Inserted'</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">SELECT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> title_id<span style="color: grey; outline: none 0px;">,</span> <span style="color: blue; outline: none 0px;">type</span><span style="color: grey; outline: none 0px;">,</span> price <span style="color: blue; outline: none 0px;">FROM</span> inserted <span style="color: green; outline: none 0px;">-- THIS IS TEMPORARY TABLE</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">PRINT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: red; outline: none 0px;">'Deleted'</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">SELECT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> title_id<span style="color: grey; outline: none 0px;">,</span> <span style="color: blue; outline: none 0px;">type</span><span style="color: grey; outline: none 0px;">,</span> price <span style="color: blue; outline: none 0px;">FROM</span> deleted <span style="color: green; outline: none 0px;">-- THIS IS TEMPORARY TABLE</span></span><span style="font-family: Verdana; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />Result is based on below rule.<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Statement Contents of inserted Contents of deleted</b><br style="outline: none 0px;" />-----------------------------------------------------------------<br style="outline: none 0px;" />INSERT Rows added Empty<br style="outline: none 0px;" />UPDATE New rows Old rows<br style="outline: none 0px;" />DELETE Empty Rows deleted<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">2) INSTEAD OF Trigger:</b></span></div>
<ol style="background-color: white; font-family: 'segoe UI'; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">Provides an alternative to the AFTER trigger that was heavily utilized in prior versions of SQL Server.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">It performs its actions instead of the action that fired it.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">This is much different from the AFTER trigger, which performs its actions after the statement that caused it to fire has completed. This means you can have an INSTEAD OF update trigger on a table that successfully completes but does not include the actual update to the table.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana; outline: none 0px;">INSTEAD OF Triggers fire instead of the operation that fires the trigger, so if you define an INSTEAD OF trigger on a table for the Delete operation, they try to delete rows, they will not actually get deleted (unless you issue another delete instruction from within the trigger) as in below example:</span></div>
</li>
</ol>
<div class="MsoNormal" style="background-color: white; color: #333333; font-family: 'segoe UI'; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana; outline: none 0px;">Let us create INSTEAD OF trigger.</span><span style="color: blue; font-family: Verdana; outline: none 0px;">if</span><span style="font-family: Verdana; outline: none 0px;"> <span style="color: grey; outline: none 0px;">exists</span><span style="color: blue; outline: none 0px;"> </span><span style="color: grey; outline: none 0px;">(</span><span style="color: blue; outline: none 0px;">select</span> <span style="color: grey; outline: none 0px;">*</span> <span style="color: blue; outline: none 0px;">from</span> <span style="color: green; outline: none 0px;">sysobjects</span> </span><span style="color: blue; font-family: Verdana; outline: none 0px;">where</span><span style="font-family: Verdana; outline: none 0px;"> id <span style="color: grey; outline: none 0px;">=</span> <span style="color: magenta; outline: none 0px;">object_id</span><span style="color: grey; outline: none 0px;">(</span><span style="color: red; outline: none 0px;">'dbo.cust_upd_orders'</span><span style="color: grey; outline: none 0px;">)</span></span><span style="color: grey; font-family: Verdana; outline: none 0px;">and</span><span style="font-family: Verdana; outline: none 0px;"> sysstat <span style="color: grey; outline: none 0px;">&</span> 0xf <span style="color: grey; outline: none 0px;">=</span> 8<span style="color: grey; outline: none 0px;">)</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">drop</span><span style="font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">trigger</span> dbo<span style="color: grey; outline: none 0px;">.</span>cust_upd_orders</span><span style="color: blue; font-family: Verdana; outline: none 0px;">go</span></div>
<div class="MsoNormal" style="background-color: white; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="color: blue; font-family: Verdana; outline: none 0px;">CREATE</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> trI_au_upd <span style="color: blue; outline: none 0px;">ON</span> authors</span><span style="color: blue; font-family: Verdana; outline: none 0px;">INSTEAD</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">OF</span> <span style="color: blue; outline: none 0px;">UPDATE</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">AS</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> </span><span style="color: blue; font-family: Verdana; outline: none 0px;">PRINT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: red; outline: none 0px;">'TRIGGER OUTPUT: '</span></span><span style="color: grey; font-family: Verdana; outline: none 0px;">+</span><span style="color: magenta; font-family: Verdana; outline: none 0px;">CONVERT</span><span style="color: grey; font-family: Verdana; outline: none 0px;">(</span><span style="color: blue; font-family: Verdana; outline: none 0px;">VARCHAR</span><span style="color: grey; font-family: Verdana; outline: none 0px;">(</span><span style="color: #333333; font-family: Verdana; outline: none 0px;">5<span style="color: grey; outline: none 0px;">),</span> <span style="color: magenta; outline: none 0px;">@@ROWCOUNT</span><span style="color: grey; outline: none 0px;">)</span> <span style="color: grey; outline: none 0px;">+</span> <span style="color: red; outline: none 0px;">' rows were updated.'</span></span><span style="color: blue; font-family: Verdana; outline: none 0px;">GO</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />Let us write an UPDATE statement now;</span><span style="color: blue; font-family: Verdana; outline: none 0px;">UPDATE</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> authors</span><span style="color: blue; font-family: Verdana; outline: none 0px;">SET</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> au_fname <span style="color: grey; outline: none 0px;">=</span> <span style="color: red; outline: none 0px;">'Rachael'</span></span><span style="color: blue; font-family: Verdana; line-height: 20px; outline: none 0px;">WHERE</span><span style="color: #333333; font-family: Verdana; line-height: 20px; outline: none 0px;"> <span style="color: blue; outline: none 0px;">state</span> <span style="color: grey; outline: none 0px;">=</span> <span style="color: red; outline: none 0px;">'UT'</span></span><span style="color: #333333; font-family: Verdana; outline: none 0px;"><br style="outline: none 0px;" />-----------------------------------------------------<br style="outline: none 0px;" />TRIGGER OUTPUT: 2 rows were updated.<br style="outline: none 0px;" /><br style="outline: none 0px;" />(2 row(s) affected)<br style="outline: none 0px;" /><br style="outline: none 0px;" />Let us see what has been updatded</span><span style="color: blue; font-family: Verdana; outline: none 0px;">SELECT</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> au_fname<span style="color: grey; outline: none 0px;">,</span> au_lname <span style="color: blue; outline: none 0px;">FROM</span> authors</span><span style="color: blue; font-family: Verdana; outline: none 0px;">WHERE</span><span style="color: #333333; font-family: Verdana; outline: none 0px;"> <span style="color: blue; outline: none 0px;">state</span> <span style="color: grey; outline: none 0px;">=</span> <span style="color: red; outline: none 0px;">'UT'</span></span><span style="color: #333333; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" /><span style="font-family: segoe UI;">au_fname au_lname</span><br style="outline: none 0px;" /><span style="font-family: segoe UI;">----------------------</span><br style="outline: none 0px;" /><span style="font-family: segoe UI;">Anne Ringer</span><br style="outline: none 0px;" /><span style="font-family: segoe UI;">Albert Ringer</span><br style="outline: none 0px;" /><br style="outline: none 0px;" /><br style="outline: none 0px;" /><span style="font-family: Verdana, sans-serif;">Lets see another example;<br style="outline: none 0px;" /><br style="outline: none 0px;" />Create a Table</span></span><span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;">CREATE</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TABLE</span> Pankaj <span style="color: grey; outline: none 0px;">(</span>Name <span style="color: blue; outline: none 0px;">varchar</span><span style="color: grey; outline: none 0px;">(</span>32<span style="color: grey; outline: none 0px;">))</span></span><span style="color: blue; outline: none 0px;">GO</span><span style="color: #333333; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />Create trigger with INSTEAD.</span><span style="color: blue; outline: none 0px;">CREATE</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> tr_pankaj <span style="color: blue; outline: none 0px;">ON</span> Pankaj</span><span style="color: blue; outline: none 0px;">INSTEAD</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">OF</span> <span style="color: blue; outline: none 0px;">DELETE</span></span><span style="color: blue; outline: none 0px;">AS</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">PRINT</span> <span style="color: red; outline: none 0px;">'Sorry - you cannot delete this data'</span></span><span style="color: blue; outline: none 0px;">GO</span><span style="color: #333333; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />INSERT into pankaj table</span><span style="color: blue; outline: none 0px;">INSERT</span><span style="color: #333333; outline: none 0px;"> pankaj<br style="outline: none 0px;" /> <span style="color: blue; outline: none 0px;">SELECT</span> <span style="color: red; outline: none 0px;">'Cannot'</span> <span style="color: blue; outline: none 0px;">union</span> <span style="color: blue; outline: none 0px;">SELECT</span> <span style="color: red; outline: none 0px;">'Delete'</span> <span style="color: blue; outline: none 0px;">union</span> <span style="color: blue; outline: none 0px;">SELECT</span> <span style="color: red; outline: none 0px;">'Me'</span></span><span style="color: blue; outline: none 0px;">GO</span><span style="color: #333333; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />Run the SQL DELETE statement.</span><span style="color: blue; outline: none 0px;">DELETE</span><span style="color: #333333; outline: none 0px;"> pankaj</span><span style="color: blue; outline: none 0px;">GO</span><span style="color: #333333; outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />-------------------------------<br style="outline: none 0px;" />Sorry - you cannot delete this data<br style="outline: none 0px;" /><br style="outline: none 0px;" />(3 row(s) affected)<br style="outline: none 0px;" /><br style="outline: none 0px;" />Run SELECT statement</span><span style="color: blue; outline: none 0px;">SELECT</span><span style="color: #333333; outline: none 0px;"> <span style="color: grey; outline: none 0px;">*</span> <span style="color: blue; outline: none 0px;">FROM</span> pankaj</span><span style="color: blue; line-height: 20px; outline: none 0px;">GO</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><span style="color: #333333;">Result is below;</span><br style="outline: none 0px;" /><br style="outline: none 0px;" /><span style="color: #333333;">Name</span><br style="outline: none 0px;" /><span style="color: #333333;">-----------------</span><br style="outline: none 0px;" /><span style="color: #333333;">Cannot</span><br style="outline: none 0px;" /><span style="color: #333333;">Delete</span><br style="outline: none 0px;" /><span style="color: #333333;">Me</span><br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Points to remember:</b></span></span></div>
<ol style="background-color: white; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">As you can see from the results of the SELECT statement, the first name (au_fname) column is not updated to 'Rachael'. The UPDATE statement is correct, but the INSTEAD OF trigger logic does not apply the update from the statement as part of its INSTEAD OF action. The<br style="outline: none 0px;" />only action the trigger carries out is to print its message.<br style="outline: none 0px;" /> </span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">The important point to realize is that after you define an INSTEAD OF trigger on a table, you need to include all the logic in the trigger to perform the actual modification as well as any other actions that the trigger might need to carry out.<br style="outline: none 0px;" /> </span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">Triggering action-The INSTEAD OF trigger fires instead of the triggering action. As shown earlier, the actions of the INSTEAD OF trigger replace the actions of the original data modification that fired the trigger.<br style="outline: none 0px;" /> </span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">Constraint processing-Constraint processing-including CHECK constraints, UNIQUE constraints, and PRIMARY KEY constraints-happens after the INSTEAD OF trigger fires.<br style="outline: none 0px;" /> </span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">If you were to print out the contents of the inserted and deleted tables from inside an Instead Of trigger, you would see they behave in exactly the same way as normal. In this case, the deleted table holds the rows you were trying to delete, even though they will not get deleted.</span></div>
</li>
</ol>
<div class="MsoNormal" style="background-color: white; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><b style="outline: none 0px;">Benefits of INSTEAD Triggers:</b></span></div>
<ul style="background-color: white; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">We can define an INSTEAD OF trigger on a view (something that will not work with AFTER triggers) and this is the basis of the Distributed Partitioned Views that are used so split data across a cluster of SQL Servers.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">We can use INSTEAD OF triggers to simplify the process of updating multiple tables for application developers.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">Mixing Trigger Types.</span></div>
</li>
</ul>
<div class="MsoNormal" style="background-color: white; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><b style="outline: none 0px;">B) Using DDL Triggers:</b></span></div>
<ol style="background-color: white; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">These triggers focus on changes to the definition of database objects as opposed to changes to the actual data.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">This type of trigger is useful for controlling development and production database environments.</span></div>
</li>
</ol>
<div class="MsoNormal" style="background-color: white; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana, sans-serif;"><span style="outline: none 0px;">Let us create DDL trigger now;<br style="outline: none 0px;" /><br style="outline: none 0px;" />Below is the syntax.<br style="outline: none 0px;" /><br style="outline: none 0px;" />CREATE TRIGGER trigger_name<br style="outline: none 0px;" />ON { ALL SERVER | DATABASE }<br style="outline: none 0px;" />[ WITH <ddl_trigger_option> [ ,...n ] ]<br style="outline: none 0px;" />{ FOR | AFTER } { event_type | event_group } [ ,...n ]<br style="outline: none 0px;" />AS { sql_statement [ ; ] [ ...n ] | EXTERNAL NAME < method specifier > [ ; ] }</span></span><br />
<span style="font-family: Verdana, sans-serif;"><span style="color: #333333; outline: none 0px;"><br style="outline: none 0px;" /></span><span style="color: blue; outline: none 0px;">CREATE</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> tr_TableAudit</span><span style="color: blue; outline: none 0px;">ON</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">DATABASE</span></span><span style="color: blue; outline: none 0px;">FOR</span><span style="color: #333333; outline: none 0px;"> CREATE_TABLE<span style="color: grey; outline: none 0px;">,</span>ALTER_TABLE<span style="color: grey; outline: none 0px;">,</span>DROP_TABLE</span><span style="color: blue; outline: none 0px;">AS</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">PRINT</span> <span style="color: red; outline: none 0px;">'You must disable the TableAudit trigger in order</span></span><span style="color: red; outline: none 0px;"> to change any table in this database'</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">ROLLBACK</span></span><span style="color: blue; line-height: 20px; outline: none 0px;">GO</span><span style="color: #333333; outline: none 0px;"><br style="outline: none 0px;" />Other way of writing the same query in more optimized way is below;</span><span style="color: blue; outline: none 0px;">IF</span><span style="color: #333333; outline: none 0px;"> <span style="color: grey; outline: none 0px;">EXISTS(</span><span style="color: blue; outline: none 0px;">SELECT</span> <span style="color: grey; outline: none 0px;">*</span> <span style="color: blue; outline: none 0px;">FROM</span> <span style="color: green; outline: none 0px;">sys</span><span style="color: grey; outline: none 0px;">.</span><span style="color: green; outline: none 0px;">triggers</span> </span><span style="color: blue; outline: none 0px;">WHERE</span><span style="color: #333333; outline: none 0px;"> name <span style="color: grey; outline: none 0px;">=</span> <span style="color: red; outline: none 0px;">N'tr_TableAudit'</span> <span style="color: grey; outline: none 0px;">AND</span> parent_class<span style="color: grey; outline: none 0px;">=</span>0<span style="color: grey; outline: none 0px;">)</span></span><span style="color: blue; outline: none 0px;">DROP</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> [tr_TableAudit] <span style="color: blue; outline: none 0px;">ON</span> <span style="color: blue; outline: none 0px;">DATABASE</span></span><span style="color: blue; outline: none 0px;">GO<br style="outline: none 0px;" />CREATE</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> tr_TableAudit <span style="color: blue; outline: none 0px;">ON</span> <span style="color: blue; outline: none 0px;">DATABASE</span></span><span style="color: blue; outline: none 0px;">FOR</span><span style="color: #333333; outline: none 0px;"> DDL_TABLE_EVENTS</span><span style="color: blue; outline: none 0px;">AS</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">PRINT</span> <span style="color: red; outline: none 0px;">'You must disable the TableAudit trigger in</span></span><span style="color: red; outline: none 0px;"> order to change any table in this database'</span><span style="color: #333333; outline: none 0px;"> <br style="outline: none 0px;" /> <span style="color: blue; outline: none 0px;">ROLLBACK</span></span><span style="color: blue; outline: none 0px;">GO</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />Let us try to run a DDL command. See the result in below figure<br style="outline: none 0px;" /><br style="outline: none 0px;" />Now let us look at an example that applies to server-level events. Above example was scoped at database level.<br style="outline: none 0px;" /><br style="outline: none 0px;" />Let us create a trigger which prevents changes to the server logins. When this trigger is installed, it displays a message and rolls back any login changes that are attempted.</span><span style="color: blue; outline: none 0px;">CREATE</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> tr_LoginAudit</span><span style="color: blue; outline: none 0px;">ON</span><span style="color: #333333; outline: none 0px;"> <span style="color: grey; outline: none 0px;">ALL</span> <span style="color: blue; outline: none 0px;">SERVER</span></span><span style="color: blue; outline: none 0px;">FOR</span><span style="color: #333333; outline: none 0px;"> CREATE_LOGIN<span style="color: grey; outline: none 0px;">,</span>ALTER_LOGIN<span style="color: grey; outline: none 0px;">,</span>DROP_LOGIN</span><span style="color: blue; outline: none 0px;">AS</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">PRINT</span><span style="color: red; outline: none 0px;">'You must disable the tr_LoginAudit trigger before making login changes'</span> <span style="color: blue; outline: none 0px;">ROLLBACK</span></span><span style="color: blue; line-height: 20px; outline: none 0px;">GO</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">C) Using CLR Trigger:</b></span></span></div>
<ol style="background-color: white; outline: none 0px; text-align: start;">
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">CLR triggers are trigger based on CLR.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">CLR integration is new in SQL Server 2008. It allows for the database objects (such as trigger) to be coded in .NET.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">Object that have heavy computation or require reference to object outside SQL are coded in the CLR.</span></div>
</li>
<li style="outline: none 0px;"><div class="MsoNormal" style="margin-bottom: 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;">We can code both DDL and DML triggers by using a supported CLR language like C#<span style="color: #333333;">.</span></span></div>
</li>
</ol>
<div class="MsoNormal" style="background-color: white; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana, sans-serif;"><span style="outline: none 0px;">Let us follow below simple steps to create a CLR trigger;<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Step 1:</b> Create the CLR class. We code the CLR class module with reference to the namespace required to compile CLR database objects.<br style="outline: none 0px;" /><br style="outline: none 0px;" />Add below reference;</span></span><br />
<div style="color: #333333;">
<span style="font-family: Verdana, sans-serif;"><span style="outline: none 0px;"><br style="outline: none 0px;" /></span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> Microsoft.SqlServer.Server;</span></span></div>
<div style="color: #333333;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System.Data.SqlTypes;</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />So below is the complete code for class;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System.Collections.Generic;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System.Linq;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System.Text;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System.Data.Sql;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System.Data.SqlClient;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> Microsoft.SqlServer.Server;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System.Data.SqlTypes;</span><span style="color: blue; outline: none 0px;">using</span><span style="outline: none 0px;"> System.Text.RegularExpressions;</span></span></div>
</div>
<div class="MsoNormal" style="background-color: white; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;">namespace</span><span style="color: #333333; outline: none 0px;"> CLRTrigger<br style="outline: none 0px;" />{<br style="outline: none 0px;" /> <span style="color: blue; outline: none 0px;">public</span> <span style="color: blue; outline: none 0px;">class</span> <span style="color: #2b91af; outline: none 0px;">CLRTrigger</span> {<br style="outline: none 0px;" /> <span style="color: blue; outline: none 0px;">public</span> <span style="color: blue; outline: none 0px;">static</span> <span style="color: blue; outline: none 0px;">void</span> showinserted()<br style="outline: none 0px;" /> {<br style="outline: none 0px;" /> <span style="color: #2b91af; outline: none 0px;">SqlTriggerContext</span> triggContext = <span style="color: #2b91af; outline: none 0px;">SqlContext</span>.TriggerContext;<br style="outline: none 0px;" /> <span style="color: #2b91af; outline: none 0px;">SqlConnection</span> conn = <span style="color: blue; outline: none 0px;">new</span> <span style="color: #2b91af; outline: none 0px;">SqlConnection</span>(<span style="color: #a31515; outline: none 0px;">" context connection =true "</span>);<br style="outline: none 0px;" /> conn.Open();<br style="outline: none 0px;" /> <span style="color: #2b91af; outline: none 0px;">SqlCommand</span> sqlComm = conn.CreateCommand();<br style="outline: none 0px;" /> <span style="color: #2b91af; outline: none 0px;">SqlPipe</span> sqlP = <span style="color: #2b91af; outline: none 0px;">SqlContext</span>.Pipe;<br style="outline: none 0px;" /> <span style="color: #2b91af; outline: none 0px;">SqlDataReader</span> dr;<br style="outline: none 0px;" /> sqlComm.CommandText = <span style="color: #a31515; outline: none 0px;">"SELECT pub_id, pub_name from inserted"</span>;<br style="outline: none 0px;" /> dr = sqlComm.ExecuteReader();<br style="outline: none 0px;" /> <span style="color: blue; outline: none 0px;">while</span> (dr.Read())<br style="outline: none 0px;" /> sqlP.Send((<span style="color: blue; outline: none 0px;">string</span>)dr[0] + <span style="color: #a31515; outline: none 0px;">","</span> + (<span style="color: blue; outline: none 0px;">string</span>)dr[1]);<br style="outline: none 0px;" /> }<br style="outline: none 0px;" /> <br style="outline: none 0px;" /> }<br style="outline: none 0px;" />}</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Step 2: </b>Compile this class and in the BIN folder of project we will get CLRTrigger.dll generated. After compiling for CLRTrigger.dll, we need to load the assembly into SQL Server<br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Step 3:</b> Now we will use T-SQL command to execute to create the assembly for CLRTrigger.dll. For that we will use CREATE ASSEMBLY in SQL Server.</span><span style="outline: none 0px;">CREATE</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">ASSEMBLY</span> </span><span style="outline: none 0px;">triggertest</span><span style="outline: none 0px;">FROM</span><span style="color: #333333; outline: none 0px;"> <span style="color: red; outline: none 0px;">'C:\CLRTrigger\CLRTrigger.dll'</span></span><span style="color: blue; outline: none 0px;">WITH</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">PERMISSION_SET</span> <span style="color: grey; outline: none 0px;">=</span> <span style="color: blue; outline: none 0px;">SAFE</span></span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Step 4:</b> The final step is to create the trigger that references the assembly. Now we will write below T-SQL commands to add a trigger on the publishers table in the Pubs database.</span><span style="outline: none 0px;">CREATE</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">TRIGGER</span> </span><span style="outline: none 0px;">tri_Publishes_clr</span><span style="outline: none 0px;">ON</span><span style="outline: none 0px;"> publishers</span><span style="outline: none 0px;">FOR</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">INSERT</span></span><span style="color: blue; outline: none 0px;">AS</span><span style="color: #333333; outline: none 0px;"> </span><span style="color: #333333; line-height: 20px; outline: none 0px;"> <span style="color: blue; outline: none 0px;">EXTERNAL</span> </span><span style="line-height: 20px; outline: none 0px;">NAME triggertest<span style="outline: none 0px;">.</span>CLRTrigger<span style="outline: none 0px;">.</span>showinserted</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />If you get some compatibility error message run the below command to set compatibility.</span><span style="color: blue; outline: none 0px;">ALTER</span><span style="color: #333333; outline: none 0px;"> <span style="color: blue; outline: none 0px;">DATABASE</span> pubs </span><span style="color: blue; line-height: 20px; outline: none 0px;">SET</span><span style="color: #333333; line-height: 20px; outline: none 0px;"> <span style="color: blue; outline: none 0px;">COMPATIBILITY_LEVEL</span> <span style="color: grey; outline: none 0px;">=</span> 100</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Step 5:</b> Enable CLR Stored procedure on SQL Server. For this run the below code;</span><span style="color: blue; outline: none 0px;">EXEC</span><span style="color: #333333; outline: none 0px;"> <span style="color: maroon; outline: none 0px;">sp_configure</span><span style="color: blue; outline: none 0px;"> </span><span style="color: red; outline: none 0px;">'show advanced options'</span> <span style="color: grey; outline: none 0px;">,</span> <span style="color: red; outline: none 0px;">'1'</span><span style="color: grey; outline: none 0px;">;</span> </span><span style="color: blue; outline: none 0px;">reconfigure</span><span style="color: grey; outline: none 0px;">;</span><span style="color: #333333; outline: none 0px;"></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;">EXEC</span><span style="outline: none 0px;"> <span style="color: maroon; outline: none 0px;">sp_configure</span><span style="color: blue; outline: none 0px;"> </span><span style="color: red; outline: none 0px;">'clr enabled'</span> <span style="color: grey; outline: none 0px;">,</span> <span style="color: red; outline: none 0px;">'1'</span> <span style="color: grey; outline: none 0px;">;</span></span><span style="color: blue; outline: none 0px;">reconfigure</span><span style="color: grey; outline: none 0px;">;</span><span style="outline: none 0px;"></span></span></div>
<div class="MsoNormal" style="background-color: white; margin-bottom: 0.0001pt; outline: none 0px; text-align: start;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;">EXEC</span><span style="color: #333333; outline: none 0px;"> <span style="color: maroon; outline: none 0px;">sp_configure</span><span style="color: blue; outline: none 0px;"> </span><span style="color: red; outline: none 0px;">'show advanced options'</span> <span style="color: grey; outline: none 0px;">,</span> <span style="color: red; outline: none 0px;">'0'</span><span style="color: grey; outline: none 0px;">;</span> </span><span style="color: blue; outline: none 0px;">reconfigure</span><span style="color: grey; outline: none 0px;">;</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="outline: none 0px;">Step 6:</b> Now we will run INSERT statement to the publishers table that fires the newly created CLR trigger.</span><span style="outline: none 0px;">INSERT</span><span style="outline: none 0px;"> publishers</span><span style="outline: none 0px;">(</span><span style="outline: none 0px;">pub_id<span style="outline: none 0px;">,</span> pub_name<span style="outline: none 0px;">)</span></span><span style="outline: none 0px;">values </span><span style="outline: none 0px;">(</span><span style="outline: none 0px;">'9922'</span><span style="outline: none 0px;">,</span><span style="outline: none 0px;">'Pankaj Tiwari'</span><span style="outline: none 0px;">)</span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" />The trigger simply echoes the contents of the inserted table. The output from the trigger is based on the insertion above. <br style="outline: none 0px;" /><br style="outline: none 0px;" />-----------------------------------------------------<br style="outline: none 0px;" />9922,Pankaj Tiwari<br style="outline: none 0px;" /><br style="outline: none 0px;" />(1 row(s) affected)<br style="outline: none 0px;" /><br style="outline: none 0px;" /><br style="outline: none 0px;" />The line of code which is printing the query result is actually below code written in a managed environment.</span><span style="outline: none 0px;">while</span><span style="outline: none 0px;"> (dr.Read())<br style="outline: none 0px;" /><span style="color: #333333;">sqlP.Send((</span><span style="color: blue; outline: none 0px;">string</span><span style="color: #333333;">)dr[0] + </span><span style="color: #a31515; outline: none 0px;">","</span><span style="color: #333333;"> + (</span><span style="color: blue; outline: none 0px;">string</span><span style="color: #333333;">)dr[1]);</span></span><span style="outline: none 0px;"><br style="outline: none 0px;" /><br style="outline: none 0px;" /><b style="color: #333333; outline: none 0px;"> </b><b>Note:-</b>The tri_Publishes_clr trigger demonstrates the basic steps for creating a CLR trigger. The true power of CLR triggers lies in performing more complex calculations, string manipulations and things of this nature that the can be done much more efficiently with CLR programming languages than they can in T-SQL<span style="color: #333333;">.</span></span></span></div>
<div style="font-family: Verdana, Geneva, sans-serif;">
<span style="background-color: white;"><br style="line-height: normal;" /></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com1tag:blogger.com,1999:blog-4700053866498083794.post-61647068850250191212014-02-24T01:35:00.002+05:302014-09-02T21:01:45.825+05:30Holiday Calender List in ASP.Net C# - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-family: Verdana, sans-serif;">Well so most of the time as a developer we get requirement to develop a calender with holidays list, so here i have tried to explain this in very simple way. Just follow step by step to develop this. </span><br />
<span style="font-family: Verdana, sans-serif;"><br />
Open Microsoft Visual Studio --> Click File --> New --> Website --> Enter file Name --> OK </span><br />
<span style="font-family: Verdana, sans-serif;"><br />
Lets write few code on page Default.aspx page </span><br />
<span style="font-family: Verdana, sans-serif;"><br />
</span><br />
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow; background-position: initial initial; background-repeat: initial initial; outline: none 0px;"><span style="outline: none 0px;"><%</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">@</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> <span style="color: maroon; outline: none 0px;">Page</span> <span style="color: red; outline: none 0px;">Language</span><span style="color: blue; outline: none 0px;">="C#"</span> <span style="color: red; outline: none 0px;">AutoEventWireup</span><span style="color: blue; outline: none 0px;">="true"</span> <span style="color: red; outline: none 0px;">CodeFile</span><span style="color: blue; outline: none 0px;">="Default.aspx.cs"</span> <span style="color: red; outline: none 0px;">Inherits</span><span style="color: blue; outline: none 0px;">="_Default"</span> </span><span style="background-color: yellow; background-position: initial initial; background-repeat: initial initial; outline: none 0px;"><span style="outline: none 0px;">%></span></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;"><!</span></span><span style="color: maroon; outline: none 0px;"><span style="outline: none 0px;">DOCTYPE</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> <span style="color: red; outline: none 0px;">html</span> <span style="color: red; outline: none 0px;">PUBLIC</span> <span style="color: blue; outline: none 0px;">"-//W3C//DTD XHTML 1.0 Transitional//EN"</span> </span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"></span></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;"><</span></span><span style="color: maroon; outline: none 0px;"><span style="outline: none 0px;">html</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> <span style="color: red; outline: none 0px;">xmlns</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">="http://www.w3.org/1999/xhtml"></span></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;"><</span></span><span style="color: maroon; outline: none 0px;"><span style="outline: none 0px;">head</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> <span style="color: red; outline: none 0px;">id</span><span style="color: blue; outline: none 0px;">="Head1"</span> <span style="color: red; outline: none 0px;">runat</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">="server"></span></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">title</span><span style="color: blue; outline: none 0px;">></</span><span style="color: maroon; outline: none 0px;">title</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;"></</span></span><span style="color: maroon; outline: none 0px;"><span style="outline: none 0px;">head</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;"><</span></span><span style="color: maroon; outline: none 0px;"><span style="outline: none 0px;">body</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">form</span> <span style="color: red; outline: none 0px;">id</span><span style="color: blue; outline: none 0px;">="form1"</span> <span style="color: red; outline: none 0px;">runat</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">="server"></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">div</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">asp</span><span style="color: blue; outline: none 0px;">:</span><span style="color: maroon; outline: none 0px;">Calendar</span> <span style="color: red; outline: none 0px;">ID</span><span style="color: blue; outline: none 0px;">="Calendar1"</span> <span style="color: red; outline: none 0px;">runat</span><span style="color: blue; outline: none 0px;">="server"</span> <span style="color: red; outline: none 0px;">Height</span><span style="color: blue; outline: none 0px;">="444px"</span> <span style="color: red; outline: none 0px;">Width</span><span style="color: blue; outline: none 0px;">="100%"</span><span style="color: red; outline: none 0px;">OnDayRender</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">="Calendar1_DayRender"</span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: red; outline: none 0px;">OnSelectionChanged</span><span style="color: blue; outline: none 0px;">="Calendar1_SelectionChanged"</span><span style="color: red; outline: none 0px;">OnVisibleMonthChanged</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">="Calendar1_VisibleMonthChanged"</span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: red; outline: none 0px;">DayNameFormat</span><span style="color: blue; outline: none 0px;">="Full"</span> <span style="color: red; outline: none 0px;">ForeColor</span><span style="color: blue; outline: none 0px;">="#000099"</span> <span style="color: red; outline: none 0px;">NextMonthText</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">=""></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">DayHeaderStyle</span> <span style="color: red; outline: none 0px;">BackColor</span><span style="color: blue; outline: none 0px;">="#666699"</span> <span style="color: red; outline: none 0px;">ForeColor</span><span style="color: blue; outline: none 0px;">="Maroon"</span> </span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">/></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">DayStyle</span> <span style="color: red; outline: none 0px;">BackColor</span><span style="color: blue; outline: none 0px;">="#CCCCCC"</span> <span style="color: red; outline: none 0px;">Font-Bold</span><span style="color: blue; outline: none 0px;">="True"</span> <span style="color: red; outline: none 0px;">Font-Italic</span><span style="color: blue; outline: none 0px;">="False"</span> <span style="color: red; outline: none 0px;">ForeColor</span><span style="color: blue; outline: none 0px;">="#000066"</span> </span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">/></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">SelectedDayStyle</span> <span style="color: red; outline: none 0px;">BackColor</span><span style="color: blue; outline: none 0px;">="#9999FF"</span> <span style="color: red; outline: none 0px;">Font-Bold</span><span style="color: blue; outline: none 0px;">="True"</span> <span style="color: red; outline: none 0px;">ForeColor</span><span style="color: blue; outline: none 0px;">="Maroon"</span> </span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">/></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">WeekendDayStyle</span> <span style="color: red; outline: none 0px;">BackColor</span><span style="color: blue; outline: none 0px;">="#999966"</span> <span style="color: red; outline: none 0px;">Font-Bold</span><span style="color: blue; outline: none 0px;">="True"</span> <span style="color: red; outline: none 0px;">ForeColor</span><span style="color: blue; outline: none 0px;">="#990000"</span> </span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">/></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"></</span><span style="color: maroon; outline: none 0px;">asp</span><span style="color: blue; outline: none 0px;">:</span><span style="color: maroon; outline: none 0px;">Calendar</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"><</span><span style="color: maroon; outline: none 0px;">asp</span><span style="color: blue; outline: none 0px;">:</span><span style="color: maroon; outline: none 0px;">Label</span> <span style="color: red; outline: none 0px;">ID</span><span style="color: blue; outline: none 0px;">="LabelAction"</span> <span style="color: red; outline: none 0px;">runat</span><span style="color: blue; outline: none 0px;">="server"></</span><span style="color: maroon; outline: none 0px;">asp</span><span style="color: blue; outline: none 0px;">:</span><span style="color: maroon; outline: none 0px;">Label</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"></</span><span style="color: maroon; outline: none 0px;">div</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif; outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;"></</span><span style="color: maroon; outline: none 0px;">form</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;"></</span></span><span style="color: maroon; outline: none 0px;"><span style="outline: none 0px;">body</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;"></</span></span><span style="color: maroon; outline: none 0px;"><span style="outline: none 0px;">html</span></span><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">></span></span></span></div>
<div class="MsoNormal" style="background-color: white; color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="color: blue; outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"><br /></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="outline: none 0px;"><span style="outline: none 0px;">Now w</span></span><span style="line-height: 18px;">rite the below code in .cs page.</span></span><br />
<div style="color: #333333;">
<span style="line-height: 18px;"><span style="font-family: Verdana, sans-serif;"><br /></span></span>
</div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">using</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> System;</span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">using</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> System.Collections.Generic;</span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">using</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> System.Linq;</span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">using</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> System.Web;</span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">using</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> System.Web.UI;</span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">using</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> System.Web.UI.WebControls;</span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">using</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> System.Collections;</span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; outline: none 0px;"><span style="outline: none 0px;">public</span></span><span style="outline: none 0px;"><span style="outline: none 0px;"> <span style="color: blue; outline: none 0px;">partial</span> <span style="color: blue; outline: none 0px;">class</span> <span style="color: #2b91af; outline: none 0px;">_Default</span> : System.Web.UI.</span><span style="color: #2b91af; outline: none 0px;"><span style="outline: none 0px;">Page</span></span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;">{</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: #2b91af; outline: none 0px;">Hashtable</span> HolidayList;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: blue; outline: none 0px;">protected</span> <span style="color: blue; outline: none 0px;">void</span> Page_Load(<span style="color: blue; outline: none 0px;">object</span> sender, <span style="color: #2b91af; outline: none 0px;">EventArgs</span> e)</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> {</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> HolidayList = Getholiday();</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.Caption = <span style="color: #a31515; outline: none 0px;">"Calender"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.FirstDayOfWeek = <span style="color: #2b91af; outline: none 0px;">FirstDayOfWeek</span>.Monday;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.NextPrevFormat = <span style="color: #2b91af; outline: none 0px;">NextPrevFormat</span>.FullMonth;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.TitleFormat = <span style="color: #2b91af; outline: none 0px;">TitleFormat</span>.Month;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.ShowGridLines = <span style="color: blue; outline: none 0px;">true</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.DayStyle.Height = <span style="color: blue; outline: none 0px;">new</span> <span style="color: #2b91af; outline: none 0px;">Unit</span>(50);</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.DayStyle.Width = <span style="color: blue; outline: none 0px;">new</span> <span style="color: #2b91af; outline: none 0px;">Unit</span>(150);</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.DayStyle.HorizontalAlign = <span style="color: #2b91af; outline: none 0px;">HorizontalAlign</span>.Center;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> Calendar1.DayStyle.VerticalAlign = <span style="color: #2b91af; outline: none 0px;">VerticalAlign</span>.Middle;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<br /></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif;"><span style="outline: none 0px;"> </span><span style="color: green; outline: none 0px;"><span style="outline: none 0px;">//Calendar1.OtherMonthDayStyle.BackColor = System.Drawing.Color.AliceBlue;</span></span></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> }</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: blue; outline: none 0px;">private</span> <span style="color: #2b91af; outline: none 0px;">Hashtable</span> Getholiday()</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> {</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: #2b91af; outline: none 0px;">Hashtable</span> holiday = <span style="color: blue; outline: none 0px;">new</span> <span style="color: #2b91af; outline: none 0px;">Hashtable</span>();</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"1/1/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"New Year"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"1/5/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Guru Govind Singh Jayanti"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"1/8/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Muharam (Al Hijra)"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"1/14/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Pongal"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"1/26/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Republic Day"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"2/23/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Maha Shivaratri"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"3/10/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Milad un Nabi (Birthday of the Prophet"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"3/21/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Holi"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"3/21/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Telugu New Year"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"4/3/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Ram Navmi"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"4/7/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Mahavir Jayanti"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"4/10/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Good Friday"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"4/12/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Easter"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"4/14/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Tamil New Year and Dr Ambedkar Birth Day"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"5/1/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"May Day"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"5/9/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Buddha Jayanti and Buddha Purnima"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"6/24/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Rath yatra"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"8/13/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Krishna Jayanthi"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"8/14/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Janmashtami"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"8/15/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Independence Day"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"8/19/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Parsi New Year"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"8/23/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Vinayaka Chaturthi"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"9/2/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Onam"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"9/5/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Teachers Day"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"9/21/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Ramzan"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"9/27/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Ayutha Pooja"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"9/28/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Vijaya Dasami (Dusherra)"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"10/2/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Gandhi Jayanti"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"10/17/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Diwali & Govardhan Puja"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"10/19/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Bhaidooj"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"11/2/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Guru Nanak Jayanti"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"11/14/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Children's Day"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"11/28/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Bakrid"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"12/25/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Christmas"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> holiday[<span style="color: #a31515; outline: none 0px;">"12/28/2013"</span>] = <span style="color: #a31515; outline: none 0px;">"Muharram"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: blue; outline: none 0px;">return</span> holiday;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> }</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: blue; outline: none 0px;">protected</span> <span style="color: blue; outline: none 0px;">void</span> Calendar1_DayRender(<span style="color: blue; outline: none 0px;">object</span> sender, <span style="color: #2b91af; outline: none 0px;">DayRenderEventArgs</span> e)</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> {</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: blue; outline: none 0px;">if</span> (HolidayList[e.Day.Date.ToShortDateString()] != <span style="color: blue; outline: none 0px;">null</span>)</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> {</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: #2b91af; outline: none 0px;">Literal</span> literal1 = <span style="color: blue; outline: none 0px;">new</span> <span style="color: #2b91af; outline: none 0px;">Literal</span>();</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> literal1.Text = <span style="color: #a31515; outline: none 0px;">"<br/>"</span>;</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> e.Cell.Controls.Add(literal1);</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: #2b91af; outline: none 0px;">Label</span> label1 = <span style="color: blue; outline: none 0px;">new</span> <span style="color: #2b91af; outline: none 0px;">Label</span>();</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> label1.Text = (<span style="color: blue; outline: none 0px;">string</span>)HolidayList[e.Day.Date.ToShortDateString()];</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> label1.Font.Size = <span style="color: blue; outline: none 0px;">new</span> <span style="color: #2b91af; outline: none 0px;">FontUnit</span>(<span style="color: #2b91af; outline: none 0px;">FontSize</span>.Small);</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> e.Cell.Controls.Add(label1);</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> }</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> }</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: blue; outline: none 0px;">protected</span> <span style="color: blue; outline: none 0px;">void</span> Calendar1_VisibleMonthChanged(<span style="color: blue; outline: none 0px;">object</span> sender, <span style="color: #2b91af; outline: none 0px;">MonthChangedEventArgs</span> e)</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> {</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> LabelAction.Text = <span style="color: #a31515; outline: none 0px;">"Month changed to :"</span> + e.NewDate.ToShortDateString();</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> }</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> <span style="color: blue; outline: none 0px;">protected</span> <span style="color: blue; outline: none 0px;">void</span> Calendar1_SelectionChanged(<span style="color: blue; outline: none 0px;">object</span> sender, <span style="color: #2b91af; outline: none 0px;">EventArgs</span> e)</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> {</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> LabelAction.Text = <span style="color: #a31515; outline: none 0px;">"Date changed to :"</span> + Calendar1.SelectedDate.ToShortDateString();</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"> }</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;">}</span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="outline: none 0px;"><span style="font-family: Verdana, sans-serif; outline: none 0px;"><br /></span></span></div>
<div class="MsoNormal" style="color: #333333; margin: 0in 0in 0.0001pt; outline: none 0px;">
<span style="font-family: Verdana, sans-serif;">Press F5 and enjoy. </span></div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com2tag:blogger.com,1999:blog-4700053866498083794.post-46673950481159551052014-02-22T19:27:00.006+05:302014-09-02T21:02:00.172+05:30Views in SQL Server Database - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">Whenever you want to provide different types of restriction to different user such as different-2 users can see different records in same table then we can use the concept of views. Views can help in simplifying query execution when the query involves retrieving data from multiple tables by applying join.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">“A view is a virtual table, which provides access to a subset of columns from one or more tables. It is a query stored as an object in the database, which does not have its own data.”</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">Views ensure data security by applying certain types of restriction on user table such as</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-align: justify;">
</div>
<ul>
<li><span style="font-family: Verdana, sans-serif;"><span style="text-indent: -0.25in;">Specific rows of a table by using where clause.</span><span style="text-indent: -0.25in;"><span style="line-height: normal;"> </span></span></span></li>
<li><span style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Specific columns of a table base on certain condition.</span></li>
<li><span style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Rows filled by using joins.</span></li>
<li><span style="font-family: Verdana, sans-serif;"><span style="text-indent: -0.25in;"><span style="line-height: normal;"> </span></span><span style="text-indent: -0.25in;">Subset of another view or a subset of views and tables.</span></span></li>
</ul>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<br />
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Syntax for creating View</span></h2>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">create</span><b> </b><span style="color: blue;">view</span><b> view_name </b><span style="color: blue;">as<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif; line-height: 18.399999618530273px;">select_statement<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">where</span><b></b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">create</span><b> </b>is a keyword which is used to create a database object</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">view</span><b> </b>is a keyword which indicates that object that is created is a view<span style="color: blue;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"> <b>view_name</b> is any valid name to your view as is a keyword <b><span style="line-height: 18.399999618530273px;">select_statement </span></b>is a select statement which is valid combination of join, subquery etc.</span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Some example which demonstrate the use of view</span></h2>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">create</span><b> </b><span style="color: blue;">view</span><b> studentView </b><span style="color: blue;">as<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">select</span><b> </b><span style="color: blue;">sid</span><span style="color: grey;">,</span>sname <span style="color: blue;">from</span><b> student</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">create</span><b> </b><span style="color: blue;">view</span><b> studentView1 </b><span style="color: blue;">as<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">select</span><b> </b><span style="color: blue;">sid</span><span style="color: grey;">,</span>sname<span style="color: grey;">,</span>scity <span style="color: blue;">from</span><b> student</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; line-height: 18.399999618530273px;">where</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">sid</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: grey; line-height: 18.399999618530273px;">between</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: red; line-height: 18.399999618530273px;">'S0001'</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: grey; line-height: 18.399999618530273px;">and</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: red; line-height: 18.399999618530273px;">'S0005'<o:p></o:p></span></span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Executing view that was early created<span style="color: #4f81bd;"><o:p></o:p></span></span></h2>
<div class="MsoListParagraph" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt 27pt; text-indent: -0.25in;">
<span style="font-family: Verdana, sans-serif;"><span style="line-height: 18.399999618530273px;">1)<span style="line-height: normal;"> </span></span><span style="color: blue; line-height: 18.399999618530273px;">select</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: grey; line-height: 18.399999618530273px;">*</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">from</span><b><span style="line-height: 18.399999618530273px;"> studentView<o:p></o:p></span></b></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><img alt="Working with Views in Database" src="http://www.mindstick.com/Articles/028e3856-3b2f-454d-95d4-f24cdf73999c/Images/image002.jpg" style="border: 0px;" title="Views in Database" /></span></div>
<div class="MsoListParagraph" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt 27pt; text-indent: -0.25in;">
<span style="font-family: Verdana, sans-serif;">2)<span style="line-height: normal;"> </span><span style="color: blue; line-height: 18.399999618530273px;">select</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: grey; line-height: 18.399999618530273px;">*</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">from</span><b><span style="line-height: 18.399999618530273px;"> studentView1</span></b></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><img alt="Working with Views in Database" src="http://www.mindstick.com/Articles/028e3856-3b2f-454d-95d4-f24cdf73999c/Images/image004.jpg" style="border: 0px;" title="Views in sql server" /></span></div>
<h1 style="background-color: white; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Creating an index view by using create index statement</span></h1>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">By default when we create any view then index is not created on that view. You can create index on the view as well as you create index on table by using create index statement.</span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Example to demonstrate creating index on view</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">Before we can create index on view be have to bound view to the schema at the time of creation.</span></div>
<div class="MsoListParagraph" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt 0.5in; text-indent: -0.25in;">
<span style="font-family: Verdana, sans-serif;">1)<span style="line-height: normal;"> </span>Binding view to the schema by using following statement</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">alter</span><b> </b><span style="color: blue;">view</span><b> studentView1 </b><span style="color: blue;">with</span><b> </b><span style="color: blue;">schemabinding</span><b> </b><span style="color: blue;">as<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">select</span><b> </b><span style="color: blue;">sid</span><span style="color: grey;">,</span>sname<span style="color: grey;">,</span>scity <span style="color: blue;">from</span><b> student</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; line-height: 18.399999618530273px;">where</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">sid</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: grey; line-height: 18.399999618530273px;">between</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: red; line-height: 18.399999618530273px;">'S0001'</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: grey; line-height: 18.399999618530273px;">and</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: red; line-height: 18.399999618530273px;">'S0005'<o:p></o:p></span></span></div>
<div class="MsoListParagraph" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt 0.5in; text-indent: -0.25in;">
<span style="font-family: Verdana, sans-serif;">2)<span style="line-height: normal;"> </span>Creating index on view</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; line-height: 18.399999618530273px;">create</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">unique</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">clustered</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">index</span><b><span style="line-height: 18.399999618530273px;"> sid_student </span></b><span style="color: blue; line-height: 18.399999618530273px;">on</span><b><span style="line-height: 18.399999618530273px;"> studentView1</span></b><span style="color: grey; line-height: 18.399999618530273px;">(</span><span style="color: blue; line-height: 18.399999618530273px;">sid</span><span style="color: grey; line-height: 18.399999618530273px;">)<o:p></o:p></span></span></div>
<h1 style="background-color: white; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Altering Views</span></h1>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">When you want to change the structure of the underlying tables such as adding new columns then we use alter commands. You can modify view without affecting its dependent objects.</span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Syntax for modifying view by using alter command</span></h2>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">alter</span><b> </b><span style="color: blue;">view</span><b> view_name</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; line-height: 18.399999618530273px;">as</span><b><span style="line-height: 18.399999618530273px;"> select_statement<o:p></o:p></span></b></span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Example of altering view</span></h2>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">alter</span><b> </b><span style="color: blue;">view</span><b> studentView1 </b><span style="color: blue;">with</span><b> </b><span style="color: blue;">schemabinding</span><b> </b><span style="color: blue;">as<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">select</span><b> </b><span style="color: blue;">sid</span><span style="color: grey;">,</span>sname<span style="color: grey;">,</span>scity <span style="color: blue;">from</span><b> student</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; line-height: 18.399999618530273px;">where</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">sid</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: grey; line-height: 18.399999618530273px;">between</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: red; line-height: 18.399999618530273px;">'S0001'</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: grey; line-height: 18.399999618530273px;">and</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: red; line-height: 18.399999618530273px;">'S0005'<o:p></o:p></span></span></div>
<h1 style="background-color: white; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Deleting Views from database</span></h1>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">The syntax of the drop view statement is:</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">drop</span><b> </b><span style="color: blue;">view</span><b> view_name</b><o:p></o:p></span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Example which demonstrate use of droping view</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; line-height: 18.399999618530273px;">drop</span><b><span style="line-height: 18.399999618530273px;"> </span></b><span style="color: blue; line-height: 18.399999618530273px;">view</span><b><span style="line-height: 18.399999618530273px;"> studentView1<o:p></o:p></span></b></span></div>
<h1 style="background-color: white; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Renaming Views<span style="color: #365f91;"><o:p></o:p></span></span></h1>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">At times for security permission we need to rename an existing view. For renaming an existing view use sp_rename system stored procedure.</span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Syntax for renaming views</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: maroon; line-height: 18.399999618530273px;">sp_rename</span><b><span style="line-height: 18.399999618530273px;"> old_view_name</span></b><span style="color: grey; line-height: 18.399999618530273px;">,</span><b><span style="line-height: 18.399999618530273px;"> new_view_name<o:p></o:p></span></b></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">where<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> old_view_name </b>represents name of the old view that you want to rename</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><b><span style="line-height: 18.399999618530273px;"> new_view_name </span></b>represents name of new view that you want</span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Example of renaming views</span></h2>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: maroon; line-height: 18.399999618530273px;">sp_rename</span><b><span style="line-height: 18.399999618530273px;"> studentView1</span></b><span style="color: grey; line-height: 18.399999618530273px;">,</span><b><span style="line-height: 18.399999618530273px;"> stdView1<o:p></o:p></span></b></span></div>
<h1 style="background-color: white; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">While renaming view mention following things</span></h1>
<div>
<span style="font-family: Verdana, sans-serif; font-size: small;"><br /></span></div>
<div>
<ul style="text-align: left;">
<li><span style="font-family: Verdana, sans-serif;">The view should be in current database.</span></li>
<li><span style="font-family: Verdana, sans-serif;">The new name for the view must follow the rules for identifier.</span></li>
<li><span style="font-family: Verdana, sans-serif;">No any other view stored in the database with new name.</span></li>
<li><span style="font-family: Verdana, sans-serif;">The view can only be renamed by its owner</span></li>
</ul>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com2tag:blogger.com,1999:blog-4700053866498083794.post-27388512871752911082014-02-22T02:34:00.000+05:302014-09-02T21:02:34.168+05:30Registration Page Using N-Tier Architecture in ASP.NET - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-family: Verdana, sans-serif;"> <span style="background-color: white; line-height: 18.399999618530273px; text-align: justify;">N-tier application architecture provides a model for developers to create a flexible and reusable application by breaking up an application into tier. The n-Tier application has mainly three tiers or layers; they are called:</span></span><br />
<div style="background-color: white; margin-left: 27pt; margin-right: 0in; text-indent: -13.5pt;">
<span style="font-family: Verdana, sans-serif;"><b>1.<span style="font-weight: normal;"> </span></b><b>Presentation Layer<o:p></o:p></b></span></div>
<div style="background-color: white; margin-left: 27pt; margin-right: 0in; text-indent: -13.5pt;">
<span style="font-family: Verdana, sans-serif;"><b>2.<span style="font-weight: normal;"> </span></b><b>Business Logic Layer<o:p></o:p></b></span></div>
<div style="background-color: white; margin-left: 27pt; margin-right: 0in; text-indent: -13.5pt;">
<span style="font-family: Verdana, sans-serif;"><b>3.<span style="font-weight: normal;"> </span></b><b>Data Access Layer<o:p></o:p></b></span></div>
<div style="background-color: white; margin-left: 0in; margin-right: 0in; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Each layer interacts with the layer directly below, and has specific function to perform.<o:p></o:p></span></div>
<div style="background-color: white; margin-left: 0in; margin-right: 0in; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><b>The Presentation Layer</b> is responsible for displaying the user interface to the end user. The programmer uses this layer for designing the user interface and to transfer data. In ASP.NET, ASPX pages, user controls, server is used to support the presentation layer.<o:p></o:p></span></div>
<div style="background-color: white; margin-left: 0in; margin-right: 0in; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><code><b>The Business Logic Layer</b></code> contains all the calculations and Business Rule validations that are required in the application.<o:p></o:p></span></div>
<div style="background-color: white; margin-left: 0in; margin-right: 0in; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span class="apple-style-span">Business Logic Layer is the class in which we write functions that get data from Presentation Layer and send that data to database through Data Access Layer.</span> The business layer works as a go-between to transfer the data from presentation layer. <span class="apple-style-span">Its responsibility is to validate the business rules of the component and communicating with the Data Access Layer.<o:p></o:p></span></span></div>
<div style="background-color: white; margin-left: 0in; margin-right: 0in; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><b>The Data Access Layer</b> gets the data from the business layer and sends it to the database or vice versa. DAL is responsible for accessing data and forwarding it to BLL. In an ASP.NET n-Tiered architecture, web pages do not make direct calls to the database. A given layer only communicates with its adjacent layers.<o:p></o:p></span></div>
<div style="background-color: white; margin-left: 0in; margin-right: 0in; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now, Talking about What is the need to divide our code in 3-Tier Architecture? Separation of User Interface, Business Logic and Database Access has many advantages.</span><br />
<br />
<ul>
<li><span style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Reusability of Business Logic Component will help you for Quick Development. Let’s take an example : We have a module that’s functionality is to perform Adding New Records, Updating Existing Record, Deleting Existing Record and Finding the Record in the System.</span><span style="font-family: Verdana, sans-serif; text-indent: -0.25in;"> </span><span style="font-family: Verdana, sans-serif; text-indent: -0.25in;">As this component is developed and tested, we can use it in any other project that might involve performing these tasks on records.</span></li>
</ul>
<ul>
<li><span style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Transformation of the system is easy. Since the Business Logic is separate from the Data Access Layer, changing the data access layer won’t affect the business logic module much. Let's say if we are moving from SQL Server data storage to Oracle, there shouldn’t be any changes required in the business layer component and in the GUI component.</span></li>
</ul>
<ul>
<li><span style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Maintenance of the system is easy. Let's say if there is a minor change in the business logic, we don’t have to install the entire system in individual user’s PCs. Let suppose that the government increases the Entertainment tax rate from 4% to 8 %, we only need to update the business logic component without affecting the productivity of end users and without any downtime.</span></li>
</ul>
<ul>
<li><span style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Using 3-Tier Architecture development allows you parallel development on individual tier.</span></li>
</ul>
</div>
<div style="background-color: white; margin-left: 0in; margin-right: 0in; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Here is the example that I have created using 3-Tier Architecture Concept. For ease of understanding I have separated the Presentation Layer, Business Access Layer and Data Access Layer. I have created BAL and DAL into App_Code Folder.<o:p></o:p></span></div>
<div style="background-color: white; margin-left: 0in; margin-right: 0in; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Here is the Screenshot of the Solution Explorer:</span><span style="font-family: Times New Roman, serif; font-size: 12pt;"><o:p></o:p></span><br />
<div style="font-family: 'Times New Roman', serif; font-size: 12pt;">
<span style="font-family: Georgia, serif;"><br /></span></div>
</div>
<div style="background-color: white; font-family: 'Times New Roman', serif; font-size: 12pt; margin-left: 0in; margin-right: 0in;">
<img alt="N-Tier Architecture in ASP.NET" src="http://www.mindstick.com/Articles/d36ceb0f-018c-4979-b2f5-a4a1e616cb5b/Images/image001.png" height="299" style="border: 0px;" title="N-Tier Architecture in ASP.NET" width="400" /></div>
<div style="background-color: white; font-size: 12pt; margin-left: 0in; margin-right: 0in;">
<span style="font-family: Verdana, sans-serif;">Lest Start with Coding. Firstly we will go with Data Access Layer then Business Access Layer and then Presentation Layer (UI).<o:p></o:p></span></div>
<h1 style="background-color: white; font-size: 14pt; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif;"><span style="color: #365f91;"> </span>Creating Data Access Layer (DAL): (RecordDAL.cs)</span></h1>
<div class="MsoNormal" style="background-color: white; font-size: 11pt; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt; line-height: 18.399999618530273px;">Add a Class File by Right Clicking on App_Code Folder and name it <b>RecordDAL.cs</b> (In my case I have created it in DAL Folder which is Under App_Code>3-Tier Folder. Below are the codes that I have written for <b>RecordDAL.cs</b> file. Here I have used Stored Procedure to perform the operations in Database.</span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Collections.Generic;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Linq;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Web;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Data.SqlClient;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Data;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: grey; font-size: 9.5pt;">///</span><span style="color: green; font-size: 9.5pt;"> </span><span style="color: grey; font-size: 9.5pt;"><summary></span><span style="font-size: 9.5pt;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: grey; font-size: 9.5pt;">///</span><span style="color: green; font-size: 9.5pt;"> Summary description for RecordDAL</span><span style="font-size: 9.5pt;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: grey; font-size: 9.5pt;">///</span><span style="color: green; font-size: 9.5pt;"> </span><span style="color: grey; font-size: 9.5pt;"></summary></span><span style="font-size: 9.5pt;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">public</span><span style="font-size: 9.5pt;"> <span style="color: blue;">class</span> <span style="color: #2b91af;">RecordDAL</span><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;">{<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">// Getting Connection String that i have created in web.config file</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">string</span> conStr = System.Configuration.<span style="color: #2b91af;">ConfigurationManager</span>.ConnectionStrings[<span style="color: #a31515;">"3Tier_ConnectionString"</span>].ConnectionString;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> RecordDAL()<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">// Used to Insert Records in Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: blue;">int</span> InsertRecord(<span style="color: blue;">string</span> FName,<span style="color: blue;">string</span> LName,<span style="color: blue;">string</span> FatherName,<span style="color: blue;">int</span> Age,<span style="color: blue;">string</span> Address,<span style="color: blue;">string</span>Phone,<span style="color: blue;">string</span> Email,<span style="color: blue;">int</span> UserID)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//Creating Connection with SQL Server Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlConnection</span> con = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlConnection</span>(conStr);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Open();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlCommand</span> cmd = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlCommand</span>(<span style="color: #a31515;">"AddRecords"</span>,con);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.CommandType = <span style="color: #2b91af;">CommandType</span>.StoredProcedure;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@FName"</span>, FName);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@LName"</span>, LName);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@FatherName"</span>, FatherName);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@Age"</span>, Age);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@Address"</span>, Address);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@Phone"</span>, Phone);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@Email"</span>, Email);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@UserID"</span>, UserID);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> cmd.ExecuteNonQuery();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ex)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Close();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Dispose();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//Used to Delete Records from the Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//This will take UserID as Input Parameter.</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: blue;">int</span> DeleteRecord(<span style="color: blue;">int</span> UserId)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlConnection</span> con = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlConnection</span>(conStr);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Open();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlCommand</span> cmd = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlCommand</span>(<span style="color: #a31515;">"DeleteRecord"</span>,con);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.CommandType = <span style="color: #2b91af;">CommandType</span>.StoredProcedure;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@UserId"</span>,UserId);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> cmd.ExecuteNonQuery();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ex)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Close();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Dispose();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//Used to Update Records in the Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//This will take UserID as Input Parameter.</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: blue;">int</span> UpdateRecord(<span style="color: blue;">string</span> FName, <span style="color: blue;">string</span> LName, <span style="color: blue;">string</span> FatherName, <span style="color: blue;">int</span> Age, <span style="color: blue;">string</span> Address,<span style="color: blue;">string</span> Phone, <span style="color: blue;">string</span> Email, <span style="color: blue;">int</span> UserID)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlConnection</span> con = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlConnection</span>(conStr);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Open();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlCommand</span> cmd = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlCommand</span>(<span style="color: #a31515;">"UpdateRecord"</span>, con);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.CommandType = <span style="color: #2b91af;">CommandType</span>.StoredProcedure;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@FName"</span>, FName);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@LName"</span>, LName);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@FatherName"</span>, FatherName);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@Age"</span>, Age);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@Address"</span>, Address);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@Phone"</span>, Phone);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@Email"</span>, Email);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> cmd.Parameters.AddWithValue(<span style="color: #a31515;">"@UserID"</span>, UserID); <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> cmd.ExecuteNonQuery();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ex)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Close();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Dispose();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">// used to Load All the Records from the Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: #2b91af;">DataTable</span> RetrieveRecords()<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlConnection</span> con = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlConnection</span>(conStr);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlDataAdapter</span> da = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlDataAdapter</span>(<span style="color: #a31515;">"ShowAllRecords"</span>, con);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> da.SelectCommand.CommandType = <span style="color: #2b91af;">CommandType</span>.StoredProcedure;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlCommandBuilder</span> bui = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlCommandBuilder</span>(da);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">DataTable</span> dt = <span style="color: blue;">new</span> <span style="color: #2b91af;">DataTable</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> da.Fill(dt);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> dt;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> da.Dispose();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Close();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Dispose();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">// Used to Check the existance of the Record.</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: blue;">int</span> checkExistance(<span style="color: blue;">int</span> UserId)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlConnection</span> con = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlConnection</span>(conStr);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Open();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlCommand</span> cmd = <span style="color: blue;">new</span> <span style="color: #2b91af;">SqlCommand</span>(<span style="color: #a31515;">"Select * from tblUserInfo where UserID="</span> + UserId + <span style="color: #a31515;">""</span>, con);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">SqlDataReader</span> dr;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> dr = cmd.ExecuteReader();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">if</span> (dr.Read())<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> 1;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">else</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> 0;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ex)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Close();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> con.Dispose();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;">}</span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 11pt; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="font-size: 12pt; line-height: 18.399999618530273px;">In the above code, I have a member variable called </span><b><span style="font-size: 12pt; line-height: 18.399999618530273px;">conStr</span></b><span style="font-size: 9.5pt; line-height: 14.566666603088379px;"> </span><span style="font-size: 12pt; line-height: 18.399999618530273px;">that is used to get the database connection string from my <b>web.config</b> file that is being used throughout the class. I have created separate method for inserting, deleting, updating records into database and loading records from database. At the End of the Article I have given the Structure of Respective tables and Used Procedures.<o:p></o:p></span></span></div>
<h1 style="background-color: white; font-size: 14pt; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif;">Creating Business Access Layer (BAL): (RecordBAL.cs)</span></h1>
<div class="MsoNormal" style="background-color: white; font-size: 11pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="font-size: 12pt;">Add a Class File by Right Clicking on App_Code Folder and name it <b>RecordBAL.cs</b>, (In my case I have created it in BAL Folder which is Under App_Code>3-Tier Folder. This contains methods that are used for calling InsertRecord</span><span style="font-size: 12pt;"> (), DeleteRecord (),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 11pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="font-size: 12pt;">RetrieveRecords () and checkExistance () method of Data Access Layer Class File.</span><span style="font-size: 12pt;"> Below are the codes that I have written for RecordBAL.cs file.</span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 11pt; margin: 0in 0in 0.0001pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Collections.Generic;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Linq;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Web;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">using</span><span style="font-size: 9.5pt;"> System.Data;<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: grey; font-size: 9.5pt;">///</span><span style="color: green; font-size: 9.5pt;"> </span><span style="color: grey; font-size: 9.5pt;"><summary></span><span style="font-size: 9.5pt;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: grey; font-size: 9.5pt;">///</span><span style="color: green; font-size: 9.5pt;"> Summary description for RecordBAL</span><span style="font-size: 9.5pt;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: grey; font-size: 9.5pt;">///</span><span style="color: green; font-size: 9.5pt;"> </span><span style="color: grey; font-size: 9.5pt;"></summary></span><span style="font-size: 9.5pt;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue; font-size: 9.5pt;">public</span><span style="font-size: 9.5pt;"> <span style="color: blue;">class</span> <span style="color: #2b91af;">RecordBAL</span><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;">{<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> RecordBAL()<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//Used for Loading All Records from Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: #2b91af;">DataTable</span> RetrieveRecords()<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//Creating the object of DAL file.</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">RecordDAL</span> rdAL = <span style="color: blue;">new</span> <span style="color: #2b91af;">RecordDAL</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//Calling the method of DAl using DAL object</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//and return the result to the caller of the method.</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> rdAL.RetrieveRecords();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> rdAL = <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//Used for Inserting Record in the Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: blue;">int</span> InsertRecord_BAL(<span style="color: blue;">string</span> FName, <span style="color: blue;">string</span> LName, <span style="color: blue;">string</span> FatherName, <span style="color: blue;">int</span> Age,<span style="color: blue;">string</span> Address, <span style="color: blue;">string</span> Phone, <span style="color: blue;">string</span> Email, <span style="color: blue;">int</span> UserID)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">RecordDAL</span> rDal = <span style="color: blue;">new</span> <span style="color: #2b91af;">RecordDAL</span>(); <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> rDal.InsertRecord( FName,LName,FatherName,Age,Address,Phone,Email,UserID);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> rDal = <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">// Used for Deleting the Records from the Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: blue;">int</span> DeleteRecord_BAL(<span style="color: blue;">int</span> UserID)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">RecordDAL</span> rDal = <span style="color: blue;">new</span> <span style="color: #2b91af;">RecordDAL</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> rDal.DeleteRecord(UserID);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> rDal = <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">//Used for Updating Record in Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: blue;">int</span> UpdateRecord_BAL(<span style="color: blue;">string</span> FName, <span style="color: blue;">string</span> LName, <span style="color: blue;">string</span> FatherName, <span style="color: blue;">int</span> Age,<span style="color: blue;">string</span> Address, <span style="color: blue;">string</span> Phone, <span style="color: blue;">string</span> Email, <span style="color: blue;">int</span> UserID)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">RecordDAL</span> rDal = <span style="color: blue;">new</span> <span style="color: #2b91af;">RecordDAL</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> rDal.UpdateRecord(FName, LName, FatherName, Age, Address, Phone, Email, UserID);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> rDal = <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: green;">// Used for checking exixtance of the Record in the Database</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">public</span> <span style="color: blue;">int</span> checkExistance_BAL(<span style="color: blue;">int</span> UserID)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: #2b91af;">RecordDAL</span> rDal = <span style="color: blue;">new</span> <span style="color: #2b91af;">RecordDAL</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">return</span> rDal.checkExistance(UserID);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ex)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">throw</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> rDal = <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;">}</span></div>
<div class="MsoNormal" style="background-color: white; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif; font-size: 9.5pt;"><br /></span></div>
<h1 style="background-color: white; font-size: 14pt; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif;">Creating Presentation Layer (UI): (Default.aspx)</span></h1>
<div class="MsoNormal" style="background-color: white; font-size: 11pt; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif; font-size: 12pt; line-height: 18.399999618530273px;">Till Now, we have created our Data Access Layer (DAL), Business Access Layer (BAL). Now, we are going to create our Presentation Layer that is User Interface (UI), it will accept the value from the user. Add a new WebPage to your project. Here I named it <b>Default.aspx</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; font-size: 11pt; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-size: 12pt; line-height: 18.399999618530273px;"><span style="font-family: Verdana, sans-serif;">Here is the Screenshot of the UI that I have created to accept the values from the user.</span><span style="font-family: Calibri, sans-serif;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-family: Calibri, sans-serif; font-size: 11pt; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<img alt="N-Tier Architecture in ASP.NET" src="http://www.mindstick.com/Articles/d36ceb0f-018c-4979-b2f5-a4a1e616cb5b/Images/image003.png" height="377" style="border: 0px;" title="N-Tier Architecture in ASP.NET" width="400" /></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Code for Default.aspx file</span></h2>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;"><%</span><span style="color: blue;">@</span> <span style="color: maroon;">Page</span> <span style="color: red;">Language</span><span style="color: blue;">="C#"</span> <span style="color: red;">AutoEventWireup</span><span style="color: blue;">="true"</span> <span style="color: red;">CodeFile</span><span style="color: blue;">="Default.aspx.cs"</span><span style="color: red;">Inherits</span><span style="color: blue;">="_Default"</span> <span style="background-color: yellow;">%></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><!</span><span style="color: maroon;">DOCTYPE</span> <span style="color: red;">html</span> <span style="color: red;">PUBLIC</span> <span style="color: blue;">"-//W3C//DTD XHTML 1.0 Transitional//EN"</span><span style="color: blue;">"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">html</span> <span style="color: red;">xmlns</span><span style="color: blue;">="http://www.w3.org/1999/xhtml"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">head</span> <span style="color: red;">runat</span><span style="color: blue;">="server"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">title</span><span style="color: blue;">></span>Add New Records (3-Tier Architecture in ASP.NET)<span style="color: blue;"></</span><span style="color: maroon;">title</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">script</span> <span style="color: red;">type</span><span style="color: blue;">="text/javascript"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: darkgreen;">// This will prevent to Go Back</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> window.history.forward(0);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">function</span> noBack()<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> window.history.forward();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: darkgreen;">//This will take the ref of textbox and will trim the white-spaces</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">function</span> trim(id) {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">if</span> (id != <span style="color: blue;">null</span>)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> id.value = id.value.toString().replace(/^\s+|\s+$/g, <span style="color: maroon;">""</span>);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">script</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">head</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">body</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">form</span> <span style="color: red;">id</span><span style="color: blue;">="form1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">div</span> <span style="color: red;">style</span><span style="color: blue;">="</span><span style="color: red;">margin</span><span style="color: blue;">:0 auto; </span><span style="color: red;">width</span><span style="color: blue;">:700px; </span><span style="color: red;">text-align</span><span style="color: blue;">:center"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">table</span> <span style="color: red;">style</span><span style="color: blue;">="</span><span style="color: red;">margin</span><span style="color: blue;">:0 auto;"</span> <span style="color: red;">width</span><span style="color: blue;">="400px"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">colspan</span><span style="color: blue;">="2"</span> <span style="color: red;">align</span><span style="color: blue;">="center"</span> <span style="color: red;">bgcolor</span><span style="color: blue;">="#99CCFF"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="Add New Records"</span> <span style="color: red;">Font-Bold</span><span style="color: blue;">="True"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">Font-Names</span><span style="color: blue;">="Georgia"</span> <span style="color: red;">ForeColor</span><span style="color: blue;">="#0033CC"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">&nbsp;</span><span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label8"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="User ID"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtUserID"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="180px"</span><span style="color: red;">onblur</span><span style="color: blue;">="trim(this)"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator8"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtUserID"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="Provi User ID"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RegularExpressionValidator3"</span><span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtUserID"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="This Will Take Number Only (Ex: 1)"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span> <span style="color: red;">ValidationExpression</span><span style="color: blue;">="^[0-9]+$"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label2"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="First Name"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtFName"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="180px"</span><span style="color: red;">onblur</span><span style="color: blue;">="trim(this)"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtFName"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="First Name Can't be Left Blank"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label3"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="Last Name"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtLName"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="180px"</span><span style="color: red;">onblur</span><span style="color: blue;">="trim(this)"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator2"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtLName"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="Last Name Can't Be Left Blank"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label4"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="Father Name"</span> <span style="color: blue;">></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtFatherName"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="180px"</span><span style="color: red;">onblur</span><span style="color: blue;">="trim(this)"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator3"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtFatherName"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="Father Name Can't Be Left Blank"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label5"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="Age"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">class</span><span style="color: blue;">="style3"</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtAge"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="100px"</span><span style="color: red;">onblur</span><span style="color: blue;">="trim(this)"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator4"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtAge"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Age Can't Be Left Blank"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RegularExpressionValidator2"</span><span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtAge"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Enter Numbers Only (Ex: 25)"</span><span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span> <span style="color: red;">ValidationExpression</span><span style="color: blue;">="^[0-9]+$"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label6"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="Address"</span> <span style="color: blue;">></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtAddress"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Height</span><span style="color: blue;">="49px"</span><span style="color: red;">TextMode</span><span style="color: blue;">="MultiLine"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">Width</span><span style="color: blue;">="180px"</span> <span style="color: red;">onblur</span><span style="color: blue;">="trim(this)"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator5"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtAddress"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="Provide Address Details"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label7"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="Phone No."></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtPhone"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="180px"</span><span style="color: red;">onblur</span><span style="color: blue;">="trim(this)"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator6"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtPhone"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="Provide Phone Details"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RegularExpressionValidator4"</span><span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtPhone"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="This Will Take Number Only (Ex: 9889989898)"</span><span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ValidationExpression</span><span style="color: blue;">="^[0-9]+$"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> Email ID<span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtEmail"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="180px"</span><span style="color: red;">onblur</span><span style="color: blue;">="trim(this)"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator7"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtEmail"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Provide Email ID"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span> <span style="color: red;">ID</span><span style="color: blue;">="RegularExpressionValidator1"</span><span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="Invalid Email Format. (Ex: abc@xyz.com)"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ValidationExpression</span><span style="color: blue;">="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtEmail"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">&nbsp;</span><span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Button</span> <span style="color: red;">ID</span><span style="color: blue;">="btnSave"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="Save"</span> <span style="color: red;">Width</span><span style="color: blue;">="95px"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">onclick</span><span style="color: blue;">="btnSave_Click"</span> <span style="color: red;">Font-Bold</span><span style="color: blue;">="True"</span> <span style="color: red;">Font-Names</span><span style="color: blue;">="Georgia"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">HyperLink</span> <span style="color: red;">ID</span><span style="color: blue;">="HyperLink1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">NavigateUrl</span><span style="color: blue;">="ShowRecords.aspx"></span>Show Records<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">HyperLink</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">&nbsp;</span><span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="left"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblMessage"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Font-Bold</span><span style="color: blue;">="True"</span> <span style="color: red;">Font-Names</span><span style="color: blue;">="Georgia"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">Font-Size</span><span style="color: blue;">="Medium"</span> <span style="color: red;">ForeColor</span><span style="color: blue;">="Red"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="right"</span> <span style="color: red;">colspan</span><span style="color: blue;">="2"</span> <span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">hr</span> <span style="color: red;">style</span><span style="color: blue;">="</span><span style="color: red;">border-color</span><span style="color: blue;">: #6699FF; </span><span style="color: red;">background-color</span><span style="color: blue;">: #99CCFF"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">&nbsp;</span><span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">table</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">div</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">form</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">html</span><span style="color: blue;">></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif; line-height: 18.399999618530273px;">The above code contains all the validation on User Input. Like Text Can’t Be Left Blank, Only Numbers in TextBox, Only Alphabets in TextBox, and Email Format Validation at client-side. It will also check that whether the record already exists in database.<o:p></o:p></span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Code for Default.aspx.cs file</span></h2>
</div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Collections.Generic;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Linq;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web.UI;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web.UI.WebControls;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Data.SqlClient;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">public</span> <span style="color: blue;">partial</span> <span style="color: blue;">class</span> <span style="color: #2b91af;">_Default</span> : System.Web.UI.<span style="color: #2b91af;">Page</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;">{ <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">protected</span> <span style="color: blue;">void</span> Page_Load(<span style="color: blue;">object</span> sender, <span style="color: #2b91af;">EventArgs</span> e)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">protected</span> <span style="color: blue;">void</span> btnSave_Click(<span style="color: blue;">object</span> sender, <span style="color: #2b91af;">EventArgs</span> e)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//Creating the object of BAL</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">RecordBAL</span> rBAL=<span style="color: blue;">new</span> <span style="color: #2b91af;">RecordBAL</span>(); <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">int</span> recordStatus = 0;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">string</span> FName=txtFName.Text.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">string</span> LName=txtLName.Text.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">string</span> FatherName=txtFatherName.Text.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">int</span> Age=<span style="color: #2b91af;">Convert</span>.ToInt32( txtAge.Text);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">string</span> Address=txtAddress.Text.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">string</span> Phone=txtPhone.Text.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">string</span> Email=txtEmail.Text.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">int</span> UserID=<span style="color: #2b91af;">Convert</span>.ToInt32(txtUserID.Text);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//Passing the Parameter in the Method of BAl using BAL object</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> recordStatus = rBAL.checkExistance_BAL(UserID);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">if</span> (recordStatus > 0)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = <span style="color: #a31515;">"This User ID Already Exists."</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">return</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> recordStatus = rBAL.InsertRecord_BAL(FName, LName, FatherName, Age, Address, Phone, Email, UserID);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">if</span>(recordStatus > 0)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = <span style="color: #a31515;">"New Record Inserted Successfully."</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//else</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">// lblMessage.Text = "This Record Already Exists.";</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ex)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = ex.Message.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> rBAL = <span style="color: blue;">null</span>; <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;">}</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="line-height: 18.399999618530273px;"><span style="font-family: Verdana, sans-serif;"><span style="font-size: small;">Now, to display the records, I have created another page and named it ShowRecords.aspx. Here is the Screenshot of the UI of</span><b>ShowRecords.aspx</b></span><span style="font-family: Calibri, sans-serif; font-size: 12pt;"><o:p></o:p></span></span></div>
<h2 style="background-color: white; color: #4f81bd; font-family: Cambria, serif; font-size: 13pt; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
ShowRecords.aspx (UI)</h2>
<div class="MsoNormal" style="background-color: white; font-family: Calibri, sans-serif; font-size: 11pt; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<img alt="N-Tier Architecture in ASP.NET" src="http://www.mindstick.com/Articles/d36ceb0f-018c-4979-b2f5-a4a1e616cb5b/Images/image005.png" height="88" style="border: 0px;" title="N-Tier Architecture in ASP.NET" width="400" /></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="line-height: 18.399999618530273px;"><span style="font-family: Verdana, sans-serif;">This will get all the Record from the database and display it in GridView. Here I have make the GridView Editable to enable it to perform Update and Delete Operation. You can Perform Update Operation by Clicking on <b>Edit</b><span style="font-size: small;"> Button and can perform Delete Operation by Clicking</span><b>Delete</b></span><span style="font-size: small;"><span style="font-family: Verdana, sans-serif;"> Button in GridView.</span><span style="font-family: Calibri, sans-serif;"><o:p></o:p></span></span></span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Code for ShowRecords.aspx file</span></h2>
</div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;"><%</span><span style="color: blue;">@</span> <span style="color: maroon;">Page</span> <span style="color: red;">Language</span><span style="color: blue;">="C#"</span> <span style="color: red;">AutoEventWireup</span><span style="color: blue;">="true"</span> <span style="color: red;">CodeFile</span><span style="color: blue;">="ShowRecords.aspx.cs"</span><span style="color: red;">Inherits</span><span style="color: blue;">="ShowRecords"</span> <span style="background-color: yellow;">%></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><!</span><span style="color: maroon;">DOCTYPE</span> <span style="color: red;">html</span> <span style="color: red;">PUBLIC</span> <span style="color: blue;">"-//W3C//DTD XHTML 1.0 Transitional//EN"</span><span style="color: blue;">"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">html</span> <span style="color: red;">xmlns</span><span style="color: blue;">="http://www.w3.org/1999/xhtml"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">head</span> <span style="color: red;">runat</span><span style="color: blue;">="server"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">title</span><span style="color: blue;">></span>List of All Records (3-Tier Architecture in ASP.NET)<span style="color: blue;"></</span><span style="color: maroon;">title</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">script</span> <span style="color: red;">type</span><span style="color: blue;">="text/javascript"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> window.history.forward(0);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">function</span> noBack()<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> window.history.forward();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">function</span> trim(id) {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">if</span> (id != <span style="color: blue;">null</span>)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> id.value = id.value.toString().replace(/^\s+|\s+$/g, <span style="color: maroon;">""</span>);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">script</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">head</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">form</span> <span style="color: red;">id</span><span style="color: blue;">="form1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">div</span> <span style="color: red;">style</span><span style="color: blue;">="</span><span style="color: red;">margin</span><span style="color: blue;">: 0 auto;"</span> <span style="color: red;">width</span><span style="color: blue;">="1100px"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">table</span> <span style="color: red;">style</span><span style="color: blue;">="</span><span style="color: red;">margin</span><span style="color: blue;">: 0 auto;"</span> <span style="color: red;">width</span><span style="color: blue;">="1100px"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">HyperLink</span> <span style="color: red;">ID</span><span style="color: blue;">="HyperLink1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">NavigateUrl</span><span style="color: blue;">="~/3-Tier/Default.aspx"></span>Add New Record<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">HyperLink</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">bgcolor</span><span style="color: blue;">="#6699FF"</span> <span style="color: red;">align</span><span style="color: blue;">="center"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">&nbsp;</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="Label1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Font-Bold</span><span style="color: blue;">="True"</span> <span style="color: red;">Font-Names</span><span style="color: blue;">="Georgia"</span> <span style="color: red;">ForeColor</span><span style="color: blue;">="White"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">Text</span><span style="color: blue;">="List of All Records"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span> <span style="color: red;">align</span><span style="color: blue;">="center"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">GridView</span> <span style="color: red;">ID</span><span style="color: blue;">="GridViewShowRecords"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">BackColor</span><span style="color: blue;">="White"</span><span style="color: red;">BorderColor</span><span style="color: blue;">="#DEDFDE"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">BorderStyle</span><span style="color: blue;">="None"</span> <span style="color: red;">BorderWidth</span><span style="color: blue;">="1px"</span> <span style="color: red;">CellPadding</span><span style="color: blue;">="4"</span><span style="color: red;">EnableModelValidation</span><span style="color: blue;">="True"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ForeColor</span><span style="color: blue;">="Black"</span> <span style="color: red;">GridLines</span><span style="color: blue;">="Vertical"</span> <span style="color: red;">AutoGenerateColumns</span><span style="color: blue;">="false"</span><span style="color: red;">OnRowCancelingEdit</span><span style="color: blue;">="RowCancelingEdit"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">OnRowDeleting</span><span style="color: blue;">="RowDeleting"</span> <span style="color: red;">OnRowEditing</span><span style="color: blue;">="RowEditing"</span><span style="color: red;">OnRowUpdating</span><span style="color: blue;">="RowUpdating"></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">AlternatingRowStyle</span> <span style="color: red;">BackColor</span><span style="color: blue;">="White"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">FooterStyle</span> <span style="color: red;">BackColor</span><span style="color: blue;">="#CCCC99"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderStyle</span> <span style="color: red;">BackColor</span><span style="color: blue;">="#6B696B"</span> <span style="color: red;">Font-Bold</span><span style="color: blue;">="True"</span> <span style="color: red;">ForeColor</span><span style="color: blue;">="White"</span><span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">PagerStyle</span> <span style="color: red;">BackColor</span><span style="color: blue;">="#F7F7DE"</span> <span style="color: red;">ForeColor</span><span style="color: blue;">="Black"</span><span style="color: red;">HorizontalAlign</span><span style="color: blue;">="Right"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">RowStyle</span> <span style="color: red;">BackColor</span><span style="color: blue;">="#F7F7DE"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">SelectedRowStyle</span> <span style="color: red;">BackColor</span><span style="color: blue;">="#CE5D5A"</span> <span style="color: red;">Font-Bold</span><span style="color: blue;">="True"</span><span style="color: red;">ForeColor</span><span style="color: blue;">="White"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">Columns</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> ID<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblUserID"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("UserId") <span style="background-color: yellow;">%></span><span style="color: blue;">'></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtUserID"</span> <span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("UserId") <span style="background-color: yellow;">%></span><span style="color: blue;">'</span><span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="20px"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">Enabled</span><span style="color: blue;">="False"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> FirstName<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblFirstName"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("FName") <span style="background-color: yellow;">%></span><span style="color: blue;">'></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtFirstName"</span> <span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("FName")<span style="background-color: yellow;">%></span><span style="color: blue;">'</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="80px"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="RequiredFieldValidator"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtFirstName"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Can't Be Left Blank."></span>*<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> LastName<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblLastName"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("LName") <span style="background-color: yellow;">%></span><span style="color: blue;">'></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtLastName"</span> <span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("LName")<span style="background-color: yellow;">%></span><span style="color: blue;">'</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="80px"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator2"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="RequiredFieldValidator"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtLastName"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Can't Be Left Blank."></span>*<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> FatherName<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblFatherName"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("FatherName") <span style="background-color: yellow;">%></span><span style="color: blue;">'></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtFatherName"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("FatherName") <span style="background-color: yellow;">%></span><span style="color: blue;">'</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="100px"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator3"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="RequiredFieldValidator"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtFatherName"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Can't Be Left Blank."></span>*<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> Age<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblAge"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("Age") <span style="background-color: yellow;">%></span><span style="color: blue;">'></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtAge"</span> <span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("Age") <span style="background-color: yellow;">%></span><span style="color: blue;">'</span><span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="30px"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator4"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="RequiredFieldValidator"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtAge"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Provide Age Details.(EX: 24)"></span>*<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RegularExpressionValidator2"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtAge"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="Enter Numbers Only (Ex: 25)"</span><span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span> <span style="color: red;">ValidationExpression</span><span style="color: blue;">="^[0-9]+$"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> Address<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblAddress"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("Address") <span style="background-color: yellow;">%></span><span style="color: blue;">'></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtAddress"</span> <span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("Address")<span style="background-color: yellow;">%></span><span style="color: blue;">'</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="150px"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator5"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="RequiredFieldValidator"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtAddress"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Provide Address Details."></span>*<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> Phone<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblPhone"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("Phone") <span style="background-color: yellow;">%></span><span style="color: blue;">'></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtPhone"</span> <span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("Phone") <span style="background-color: yellow;">%></span><span style="color: blue;">'</span><span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="80px"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator6"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="RequiredFieldValidator"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtPhone"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Provide Phone No. Details."></span>*<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RegularExpressionValidator4"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtPhone"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="This Will Take Number Only (Ex: 9889989898)"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span> <span style="color: red;">ValidationExpression</span><span style="color: blue;">="^[0-9]+$"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> Email<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblEmail"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("Email") <span style="background-color: yellow;">%></span><span style="color: blue;">'></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span> <span style="color: red;">ID</span><span style="color: blue;">="txtEmail"</span> <span style="color: red;">Text</span><span style="color: blue;">='</span><span style="background-color: yellow;"><%</span><span style="color: blue;">#</span>Bind("Email") <span style="background-color: yellow;">%></span><span style="color: blue;">'</span><span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Width</span><span style="color: blue;">="120px"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TextBox</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RequiredFieldValidator7"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="RequiredFieldValidator"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtEmail"</span> <span style="color: red;">ToolTip</span><span style="color: blue;">="Provide Email Details.(EX: abc@xyz.com)"></span>*<span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RequiredFieldValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: red;">ID</span><span style="color: blue;">="RegularExpressionValidator1"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">ErrorMessage</span><span style="color: blue;">="*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ToolTip</span><span style="color: blue;">="Invalid Email Format. (Ex: abc@xyz.com)"</span><span style="color: red;">ValidationExpression</span><span style="color: blue;">="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">ControlToValidate</span><span style="color: blue;">="txtEmail"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">RegularExpressionValidator</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> Command Button<span style="color: blue;"></</span><span style="color: maroon;">HeaderTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Button</span> <span style="color: red;">ID</span><span style="color: blue;">="btnEdit"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">CommandName</span><span style="color: blue;">="Edit"</span> <span style="color: red;">Text</span><span style="color: blue;">="Edit"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Button</span> <span style="color: red;">ID</span><span style="color: blue;">="btnDelete"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">CommandName</span><span style="color: blue;">="Delete"</span> <span style="color: red;">Text</span><span style="color: blue;">="Delete"</span> <span style="color: red;">CausesValidation</span><span style="color: blue;">="true"</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: red;">OnClientClick</span><span style="color: blue;">="return confirm('Are you sure?')"</span><span style="color: blue;">/></span> <span style="color: blue;"></</span><span style="color: maroon;">ItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Button</span> <span style="color: red;">ID</span><span style="color: blue;">="btnUpdate"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">CommandName</span><span style="color: blue;">="Update"</span> <span style="color: red;">Text</span><span style="color: blue;">="Update"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Button</span> <span style="color: red;">ID</span><span style="color: blue;">="btnCancel"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span><span style="color: red;">CommandName</span><span style="color: blue;">="Cancel"</span> <span style="color: red;">Text</span><span style="color: blue;">="Cancel"</span> <span style="color: red;">CausesValidation</span><span style="color: blue;">="false"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">EditItemTemplate</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">TemplateField</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">Columns</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">GridView</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span><span style="color: blue;">></span> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span> <span style="color: red;">ID</span><span style="color: blue;">="lblMessage"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Font-Bold</span><span style="color: blue;">="True"</span> <span style="color: red;">Font-Names</span><span style="color: blue;">="Georgia"</span> <span style="color: red;">ForeColor</span><span style="color: blue;">="Red"></</span><span style="color: maroon;">asp</span><span style="color: blue;">:</span><span style="color: maroon;">Label</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">hr</span> <span style="color: red;">style</span><span style="color: blue;">="</span><span style="color: red;">border-color</span><span style="color: blue;">: #6699FF"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">td</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">tr</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">table</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">div</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">form</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">html</span><span style="color: blue;">></span></span></div>
<div class="MsoNormal" style="background-color: white; font-family: Calibri, sans-serif; font-size: 15px; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Consolas; font-size: 9.5pt;"><br /></span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Code for ShowRecords.aspx.cs file</span></h2>
</div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Collections.Generic;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Linq;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web.UI;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web.UI.WebControls;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Data; <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">public</span> <span style="color: blue;">partial</span> <span style="color: blue;">class</span> <span style="color: #2b91af;">ShowRecords</span> : System.Web.UI.<span style="color: #2b91af;">Page</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;">{ <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">protected</span> <span style="color: blue;">void</span> Page_Load(<span style="color: blue;">object</span> sender, <span style="color: #2b91af;">EventArgs</span> e)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">if</span> (!IsPostBack)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//Binding the GridView</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> BindGridViewShowRecords();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">private</span> <span style="color: blue;">void</span> BindGridViewShowRecords()<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//Setting the DataSource of GridView</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> GridViewShowRecords.DataSource = GridShowRecordsDataSource();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> GridViewShowRecords.DataBind();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">private</span> <span style="color: #2b91af;">DataTable</span> GridShowRecordsDataSource()<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//Creating object of BAL</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">RecordBAL</span> rBAL = <span style="color: blue;">new</span> <span style="color: #2b91af;">RecordBAL</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">DataTable</span> dTable = <span style="color: blue;">new</span> <span style="color: #2b91af;">DataTable</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//Getting the DataSource for GridView from BAL Using BAL object</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> dTable = rBAL.RetrieveRecords();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ex)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = ex.Message.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> rBAL = <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">return</span> dTable;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">protected</span> <span style="color: blue;">void</span> RowCancelingEdit(<span style="color: blue;">object</span> sender, <span style="color: #2b91af;">GridViewCancelEditEventArgs</span> e)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> GridViewShowRecords.EditIndex = -1;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> BindGridViewShowRecords();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> } <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">protected</span> <span style="color: blue;">void</span> RowEditing(<span style="color: blue;">object</span> sender, <span style="color: #2b91af;">GridViewEditEventArgs</span> e)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> GridViewShowRecords.EditIndex = e.NewEditIndex;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> BindGridViewShowRecords();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">protected</span> <span style="color: blue;">void</span> RowUpdating(<span style="color: blue;">object</span> sender, <span style="color: #2b91af;">GridViewUpdateEventArgs</span> e)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">int</span> recordStatus = 0;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">TextBox</span> UserID = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"txtUserID"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">TextBox</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">TextBox</span> FName = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"txtFirstName"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">TextBox</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">TextBox</span> LName = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"txtLastName"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">TextBox</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">TextBox</span> FatherName = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"txtFatherName"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">TextBox</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">TextBox</span> Age = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"txtAge"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">TextBox</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">TextBox</span> Address = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"txtAddress"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">TextBox</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">TextBox</span> Phone = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"txtPhone"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">TextBox</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">TextBox</span> Email = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"txtEmail"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">TextBox</span>; <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">RecordBAL</span> rBAL = <span style="color: blue;">new</span> <span style="color: #2b91af;">RecordBAL</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> recordStatus = rBAL.UpdateRecord_BAL(FName.Text.Trim(),LName.Text.Trim(),FatherName.Text.Trim(),<span style="color: #2b91af;">Convert</span>.ToInt32(Age.Text.Trim()),Address.Text.Trim(),<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;">Phone.Text.Trim(),Email.Text.Trim(),<span style="color: #2b91af;">Convert</span>.ToInt32( UserID.Text.Trim()));<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">if</span> (recordStatus > 0)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = <span style="color: #a31515;">"Record Updated Successfully."</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">else</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = <span style="color: #a31515;">"Record couldn't updated"</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ee)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = ee.Message.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> rBAL = <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> GridViewShowRecords.EditIndex = -1;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> BindGridViewShowRecords();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ex)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> Response.Write(ex.Message);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">protected</span> <span style="color: blue;">void</span> RowDeleting(<span style="color: blue;">object</span> sender, <span style="color: #2b91af;">GridViewDeleteEventArgs</span> e)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">int</span> recordStatus = 0;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">Label</span> UserID = GridViewShowRecords.Rows[e.RowIndex].FindControl(<span style="color: #a31515;">"lblUserID"</span>) <span style="color: blue;">as</span> <span style="color: #2b91af;">Label</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">int</span> id = <span style="color: #2b91af;">Convert</span>.ToInt32(UserID.Text);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: #2b91af;">RecordBAL</span> rBAL = <span style="color: blue;">new</span> <span style="color: #2b91af;">RecordBAL</span>();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">try</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> recordStatus = rBAL.DeleteRecord_BAL(id);<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">if</span> (recordStatus > 0)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = <span style="color: #a31515;">"Record Deleted Successfully."</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">else</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = <span style="color: #a31515;">"Record couldn't Deleted"</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">catch</span> (<span style="color: #2b91af;">Exception</span> ee)<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> lblMessage.Text = ee.Message.ToString();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">finally</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> rBAL = <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> GridViewShowRecords.EditIndex = -1;<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> BindGridViewShowRecords();<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;">}</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="line-height: 18.399999618530273px;"><span style="font-family: Verdana, sans-serif;"> Following are the Screenshots of the output window of the program.</span><span style="font-family: Calibri, sans-serif; font-size: 12pt;"><o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; font-family: Calibri, sans-serif; font-size: 11pt; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<img alt="N-Tier Architecture in ASP.NET" src="http://www.mindstick.com/Articles/d36ceb0f-018c-4979-b2f5-a4a1e616cb5b/Images/image007.png" height="321" style="border: 0px;" title="N-Tier Architecture in ASP.NET" width="400" /></div>
<div class="MsoNormal" style="background-color: white; font-family: Calibri, sans-serif; font-size: 11pt; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<img alt="N-Tier Architecture in ASP.NET" src="http://www.mindstick.com/Articles/d36ceb0f-018c-4979-b2f5-a4a1e616cb5b/Images/image009.png" height="111" style="border: 0px;" title="N-Tier Architecture in ASP.NET" width="400" /></div>
</div>
<div>
<h1 style="background-color: white; line-height: 21.466665267944336px; margin: 24pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Database Structure<u style="color: #365f91;"><o:p></o:p></u></span></h1>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<span style="font-family: Verdana, sans-serif;">Following are the structure of the Respective Tables and Stored Procedures used in this example.</span></div>
<div class="MsoNormal" style="background-color: white; line-height: 16.866666793823242px; margin: 0in 0in 10pt;">
<b><span style="font-family: Verdana, sans-serif;">tblUserInfo</span></b></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">CREATE</span><b> </b><span style="color: blue;">TABLE</span><b> [dbo]</b><span style="color: grey;">.</span>[tblUserInfo]<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: grey; font-family: Verdana, sans-serif;">(<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> [FName] [varchar]</b><span style="color: grey;">(</span>100<span style="color: grey;">)</span><b> </b><span style="color: grey;">NOT</span><b> </b><span style="color: grey;">NULL,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> [LName] [varchar]</b><span style="color: grey;">(</span>100<span style="color: grey;">)</span><b> </b><span style="color: grey;">NULL,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> [FatherName] [varchar]</b><span style="color: grey;">(</span>100<span style="color: grey;">)</span><b> </b><span style="color: grey;">NULL,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> [Age] [int] </b><span style="color: grey;">NULL,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> [Address] [varchar]</b><span style="color: grey;">(</span>200<span style="color: grey;">)</span><b> </b><span style="color: grey;">NULL,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> [Phone] [varchar]</b><span style="color: grey;">(</span>20<span style="color: grey;">)</span><b> </b><span style="color: grey;">NULL,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> [Email] [varchar]</b><span style="color: grey;">(</span>50<span style="color: grey;">)</span><b> </b><span style="color: grey;">NULL,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> [UserID] [int] </b><span style="color: blue;">primary</span><b> </b><span style="color: blue;">key</span><span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: grey; font-family: Verdana, sans-serif;">)</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: grey; font-family: Verdana, sans-serif;"><br /></span></div>
<h2 style="background-color: white; line-height: 19.933334350585938px; margin: 10pt 0in 0.0001pt; page-break-after: avoid;">
<span style="font-family: Verdana, sans-serif; font-size: small;">Stored Procedure</span></h2>
</div>
<div>
<u><span style="font-family: Verdana, sans-serif;"><br /></span></u></div>
<div>
<b><span style="font-family: Verdana, sans-serif;">AddRecords</span></b></div>
<div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">CREATE</span><b> </b><span style="color: blue;">PROCEDURE</span><b> [dbo]</b><span style="color: grey;">.</span>[AddRecords]<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"> </span><span style="color: grey;">(</span><b> </b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @FName </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>100<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @LName </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>100<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @FatherName </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>100<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @Age </b><span style="color: blue;">int</span><span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @Address </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>200<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @Phone </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>20<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @Email </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>50<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @UserID </b><span style="color: blue;">int<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: grey;">)<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Verdana, sans-serif;">AS<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">insert</span><b> </b><span style="color: blue;">into</span><b> tblUserInfo</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"> </span><span style="color: grey;">(</span>FName<span style="color: grey;">,</span>LName<span style="color: grey;">,</span>FatherName<span style="color: grey;">,</span>Age<span style="color: grey;">,</span><span style="color: blue;">Address</span><span style="color: grey;">,</span>Phone<span style="color: grey;">,</span>Email<span style="color: grey;">,</span>UserID<span style="color: grey;">)<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">values<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"> </span><span style="color: grey;">(</span>@FName<span style="color: grey;">,</span>@LName<span style="color: grey;">,</span>@FatherName<span style="color: grey;">,</span>@Age<span style="color: grey;">,</span>@Address<span style="color: grey;">,</span>@Phone<span style="color: grey;">,</span>@Email<span style="color: grey;">,</span>@UserID <span style="color: grey;">)<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">RETURN<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Verdana, sans-serif;">GO<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b>UpdateRecord </b></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b><br /></b></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">CREATE</span><b> </b><span style="color: blue;">PROCEDURE</span><b> [dbo]</b><span style="color: grey;">.</span>[UpdateRecord]<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"> </span><span style="color: grey;">(<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @FName </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>100<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @LName </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>100<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @FatherName </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>100<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @Age </b><span style="color: blue;">int</span><span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @Address </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>200<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @Phone </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>20<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @Email </b><span style="color: blue;">varchar</span><span style="color: grey;">(</span>50<span style="color: grey;">),<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @UserID </b><span style="color: blue;">int<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: grey;">)<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Verdana, sans-serif;">AS<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">update</span><b> tblUserInfo</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">set</span><b> </b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> FName</b><span style="color: grey;">=</span>@FName<span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> LName</b><span style="color: grey;">=</span>@LName<span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> FatherName</b><span style="color: grey;">=</span>@FatherName<span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> Age</b><span style="color: grey;">=</span>@Age<span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">Address</span><span style="color: grey;">=</span>@Address<span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> Phone</b><span style="color: grey;">=</span>@Phone<span style="color: grey;">,<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> Email</b><span style="color: grey;">=</span>@Email<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">where</span><b></b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> UserID</b><span style="color: grey;">=</span><b> @UserID</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">RETURN<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Verdana, sans-serif;">GO</span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b>DeleteRecord</b></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b><br /></b></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">CREATE</span><b> </b><span style="color: blue;">PROCEDURE</span><b> [dbo]</b><span style="color: grey;">.</span>[DeleteRecord]<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"> </span><span style="color: grey;">(<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> @UserId </b><span style="color: blue;">int<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: grey;">)<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Verdana, sans-serif;">AS<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">delete</span><b> </b><span style="color: blue;">from</span><b> tblUserInfo </b><span style="color: blue;">where</span><b> UserID </b><span style="color: grey;">=</span><b> @UserId</b><o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="font-family: Verdana, sans-serif;"><b> </b><span style="color: blue;">RETURN<o:p></o:p></span></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 0.0001pt;">
<span style="color: blue; font-family: Verdana, sans-serif;">GO</span></div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com0tag:blogger.com,1999:blog-4700053866498083794.post-16708166610044168232014-02-20T02:30:00.002+05:302014-09-02T21:02:50.808+05:30MVC Introduction - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<h1 style="margin: 24pt 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif; font-size: small;">Introduction</span></h1>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">ASP.NET MVC is a Web development framework from Microsoft that combines the effectiveness and</span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">tidiness of model-view-controller (MVC) architecture. It is the architectural pattern based on ASP.NET framework which provides a clean and elegant way of developing Web application.</span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
</div>
<h1 style="margin: 24pt 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif; font-size: small;">Limitation of ASP.Net Web Forms</span></h1>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">Traditional ASP.NET Web Forms development was great in principle, but reality proved more</span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">complicated. Let us discuss some limitation of web forms which are seen as drawbacks:-</span><br />
<span style="background-color: white; font-family: Verdana, sans-serif;"><br /></span>
<b style="font-family: Verdana, sans-serif; text-indent: -0.25in;">View State weight</b><span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;">: The actual mechanism for maintaining state across requests (known as View State) results in large blocks of data being transferred between the client and server. This data can reach hundreds of kilobytes in even modest Web applications, and it goes back and forth with every request, leading to slower response times and increasing the bandwidth demands of the server.</span><br />
<span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;"><br /></span>
<b style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Page life cycle</b><span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;">: The mechanism for connecting client-side events with server-side event handler code, part of the page life cycle, can be extraordinarily complicated and delicate. Few developers have success manipulating the control hierarchy at runtime without getting View State errors or finding that some event handlers mysteriously fail to execute.</span><br />
<span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;"><br /></span>
<b style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Url</b><span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;">: In ASP.NET web forms the request URL points to physical files and the structure of the URL is not SEO friendly. Also, now is the time when URL structure is very important and clean URLs and control over URLs is very much desired.</span><br />
<b style="font-family: Verdana, sans-serif; text-indent: -0.25in;"><br /></b>
<b style="font-family: Verdana, sans-serif; text-indent: -0.25in;">Code Behind</b><span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;">: Code behind model, in my opinion, is the best part of ASP.NET. It provides clear separation of concern. From a developers perspective having the code behind file provides a great way to write the server side logic without having to write code between the HTML markups.</span></div>
<div class="MsoNormal" style="margin: 0in 0in 10pt 0.25in; text-align: justify;">
</div>
<h1 style="margin: 24pt 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif; font-size: small;">Key Benefits of ASP.net MVC</span></h1>
<div class="MsoNormal" style="margin: 0in 0in 10pt; text-align: justify;">
</div>
<h1 style="margin: 24pt 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif; font-size: small;">MVC Architecture</span></h1>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">There are three pieces to the MVC architecture:-</span><br />
<span style="background-color: white; font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
</div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;"><b>The model</b>—The domain that your software is built around. If you were building a blog, your models might be post and comment. In some contexts, the term model might refer to a view-specific model—a representation of the domain for the specific purpose of being displayed in the user interface.</span><br />
<span style="background-color: white; font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
</div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;"><b> The view</b>—The visual representation of a model, given some context. It’s usually the resulting markup that the framework renders to the browser, such as the HTML representing the blog post.</span><br />
<span style="background-color: white; font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
</div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;"><b> The controller</b>—The coordinator that provides the link between the view and the model. The controller is responsible for processing input, acting upon the model, and deciding on what action should be performed, such as rendering a view or redirecting to another page.</span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
</div>
<h1 style="margin: 24pt 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif; font-size: small;">Tight Control over HTML and HTTP</span></h1>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">ASP.NET MVC–generated pages don’t contain any View State data, so they can be hundreds of kilobytes smaller than typical pages from ASP.NET Web Forms. Despite today’s fast broadband connections, this economy of bandwidth still gives an enormously improved end-user experience.</span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
</div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">Like Ruby on Rails, ASP.NET MVC works in tune with HTTP. You have total control over the requests passing between the browser and server, so you can fine-tune your user experience as much as you like.</span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
</div>
<h1 style="margin: 24pt 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif; font-size: small;">Extensibility</span></h1>
<div class="MsoNormal" style="margin: 0in 0in 10pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">The ASP.NET MVC designers set out to give you three options for each MVC Framework component:</span><br />
<br />
<ul>
<li><span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;">Use the default implementation of the component as it stands (which should be enough for most applications).</span></li>
<li><span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;">Derive a subclass of the default implementation to tweak its behavior.</span></li>
<li><span style="background-color: white; font-family: Verdana, sans-serif; text-indent: -0.25in;">Replace the component entirely with a new implementation of the interface or abstract base class.</span></li>
</ul>
</div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span class="Heading1Char" style="background-color: white;"><strong><span style="font-family: Verdana, sans-serif;">Testability</span></strong></span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<span style="background-color: white; font-family: Verdana, sans-serif;">The MVC architecture gives you a great start in making your application maintainable and testable because you naturally separate different application concerns into different, independent software pieces. You can write test scripts that simulate user interactions without needing to guess which HTML element structures, CSS classes, or IDs the framework will generate, and you do not have to worry about the structure changing unexpectedly.</span></div>
<div class="MsoNoSpacing" style="margin: 0in 0in 0pt; text-align: justify;">
<br /></div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com4tag:blogger.com,1999:blog-4700053866498083794.post-22572617584978468532014-02-20T01:50:00.002+05:302014-09-02T21:03:20.640+05:30Simple Registration Page Using Asp.Net MVC 4 - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Follow the step :<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;">Lets first open your Visual studio 2012 and create an empty
asp.net mvc 4 application with razor engine then <span style="background: white;">Add a controller to the project named ”HomeController.cs” with below
code:</span><o:p></o:p></span></div>
<div class="MsoNormal">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> SimpleDataEntryApp.Models;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Collections.Generic;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Linq;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web.Mvc;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">namespace</span> SimpleDataEntryApp.Controllers<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">{<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: blue;">class</span> <span style="color: #2b91af;">HomeController</span> : <span style="color: #2b91af;">Controller</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">// GET:
/Home/</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: #2b91af;">ActionResult</span> Index()<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">int</span> hour
= <span style="color: #2b91af;">DateTime</span>.Now.Hour;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> ViewBag.Time
= hour < 12 ? <span style="color: #a31515;">"Good Morning!"</span> : <span style="color: #a31515;">"Good
Afternoon!"</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">return</span> View();<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">}<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now
create a model class and named “Seminar.cs” and add some properties like
below:<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Collections.Generic;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Linq;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">namespace</span> SimpleDataEntryApp.Models<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">{<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: blue;">class</span> <span style="color: #2b91af;">Seminar</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: blue;">string</span> name
{ <span style="color: blue;">get</span>; <span style="color: blue;">set</span>; }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: blue;">string</span> email
{ <span style="color: blue;">get</span>; <span style="color: blue;">set</span>; }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: blue;">string</span> phone
{ <span style="color: blue;">get</span>; <span style="color: blue;">set</span>; }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: blue;">bool</span>?
willAttend { <span style="color: blue;">get</span>; <span style="color: blue;">set</span>; }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">}<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now add a view to the project by right clicking in the Index()
ActionResult in the “HomeController.cs” file and named it “Index.cshtml”.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;">@{</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> Layout
= <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;">}</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><!</span><span style="color: maroon;">DOCTYPE</span> <span style="color: red;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">head</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">meta</span> <span style="color: red;">name</span><span style="color: blue;">="viewport"</span> <span style="color: red;">content</span><span style="color: blue;">="width=device-width"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">title</span><span style="color: blue;">></span>Index<span style="color: blue;"></</span><span style="color: maroon;">title</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">head</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">div</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">h3</span><span style="color: blue;">></span> <span style="background: yellow;">@</span>ViewBag.Time <span style="color: blue;"></</span><span style="color: maroon;">h3</span><span style="color: blue;">><</span><span style="color: maroon;">br</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> Simple
Registration Page Using Asp.Net MVC 4<span style="color: blue;"><</span><span style="color: maroon;">br</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> Click
here to insert records <span style="color: red;">&nbsp;</span><span style="background-color: yellow;">@</span>Html.ActionLink(<span style="color: #a31515;">"here"</span>,<span style="color: #a31515;">"RegForm"</span>)<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">div</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now you have added an ActionLink in this view to move to the
next page when we click on “here”.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Next
you have to add a ViewResult method in the “HomeController.cs” file
like below:<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">[<span style="color: #2b91af;">HttpGet</span>]<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">public</span> <span style="color: #2b91af;">ViewResult</span> RegForm()<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">{<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">return</span> View();<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">}<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">now also add a view to this viewresult and named it as ”RegForm”
and make it a strongly-typed view like this:<o:p></o:p></span></div>
<div class="MsoNormal" style="background-color: white; margin: 0in 0in 10pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><img alt="" src="data:image/png;base64,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" style="border: 0px;" /></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now
lets write few code in the “RegForm.cshtml” file.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;">@model </span>SimpleDataEntryApp.Models.<span style="color: #2b91af;">Seminar</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;">@{</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> Layout
= <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;">}</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><!</span><span style="color: maroon;">DOCTYPE</span> <span style="color: red;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">head</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">meta</span> <span style="color: red;">name</span><span style="color: blue;">="viewport"</span> <span style="color: red;">content</span><span style="color: blue;">="width=device-width"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">title</span><span style="color: blue;">></span>RegForm<span style="color: blue;"></</span><span style="color: maroon;">title</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">head</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="background: yellow;">@</span><span style="color: blue;">using</span> (Html.BeginForm())<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">p</span><span style="color: blue;">></span>Name
: <span style="background: yellow;">@</span>Html.TextBoxFor(m => m.name)<span style="color: blue;"></</span><span style="color: maroon;">p</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">p</span><span style="color: blue;">></span>Email
: <span style="background: yellow;">@</span>Html.TextBoxFor(m => m.email)<span style="color: blue;"></</span><span style="color: maroon;">p</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">p</span><span style="color: blue;">></span>Phone
: <span style="background: yellow;">@</span>Html.TextBoxFor(m => m.phone)<span style="color: blue;"></</span><span style="color: maroon;">p</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">p</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> Will
you attend? : <span style="background: yellow;">@</span>Html.DropDownListFor(m
=> m.willAttend, <span style="color: blue;">new</span>[]{<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">new</span> <span style="color: #2b91af;">SelectListItem</span>()
{Text = <span style="color: #a31515;">"Yes"</span>, Value = <span style="color: blue;">bool</span>.TrueString},<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">new</span> <span style="color: #2b91af;">SelectListItem</span>()
{Text= <span style="color: #a31515;">"No"</span>, Value= <span style="color: blue;">bool</span>.FalseString},<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> },<span style="color: #a31515;">"Choose
an option"</span>)<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">p</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">input</span> <span style="color: red;">type</span><span style="color: blue;">="submit"</span> <span style="color: red;">value</span><span style="color: blue;">="Submit"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">so in this view, we have created a simple form with three
textboxes and a dropdownlist and a submit button to submit the values.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now we
have created a form, next we need a page to display the values which user has
inputted in the form, so add another viewresult to the controller that is “HomeController.cs”
like this:<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">[<span style="color: #2b91af;">HttpPost</span>]<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">public</span> <span style="color: #2b91af;">ViewResult</span> RegForm(<span style="color: #2b91af;">Seminar</span> seminarResponse)<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">{<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">return</span> View(<span style="color: #a31515;">"Thanks"</span>,
seminarResponse);<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">}<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">So the whole <b>“HomeController.cs”</b> file look like
this:<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> SimpleDataEntryApp.Models;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Collections.Generic;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Linq;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">using</span> System.Web.Mvc;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;">namespace</span> SimpleDataEntryApp.Controllers<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">{<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: blue;">class</span> <span style="color: #2b91af;">HomeController</span> : <span style="color: #2b91af;">Controller</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">//</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: green;">// GET:
/Home/</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: #2b91af;">ActionResult</span> Index()<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">int</span> hour
= <span style="color: #2b91af;">DateTime</span>.Now.Hour;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> ViewBag.Time
= hour < 12 ? <span style="color: #a31515;">"Good Morning!"</span> : <span style="color: #a31515;">"Good
Afternoon!"</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">return</span> View();<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> [<span style="color: #2b91af;">HttpGet</span>]<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: #2b91af;">ViewResult</span> RegForm()<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">return</span> View();<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> [<span style="color: #2b91af;">HttpPost</span>]<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">public</span> <span style="color: #2b91af;">ViewResult</span> RegForm(<span style="color: #2b91af;">Seminar</span> seminarResponse)<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">return</span> View(<span style="color: #a31515;">"Thanks"</span>,
seminarResponse);<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">}<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now add a view to the viewresult RegForm(Seminar seminarResponse)
by right clicking to it named “Thanks.cshtml” and make it a strongly-typed view
like this:<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <img alt="" src="data:image/png;base64,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" style="border: 0px;" /></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now write the below code in it:<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;">@model </span>SimpleDataEntryApp.Models.<span style="color: #2b91af;">Seminar</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;">@{</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> Layout
= <span style="color: blue;">null</span>;<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: yellow;">}</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><!</span><span style="color: maroon;">DOCTYPE</span> <span style="color: red;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">head</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">meta</span> <span style="color: red;">name</span><span style="color: blue;">="viewport"</span> <span style="color: red;">content</span><span style="color: blue;">="width=device-width"</span> <span style="color: blue;">/></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">title</span><span style="color: blue;">></span>Thanks<span style="color: blue;"></</span><span style="color: maroon;">title</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">head</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">div</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"><</span><span style="color: maroon;">h1</span><span style="color: blue;">></span>Thank
you, <span style="background: yellow;">@</span>Model.name<span style="color: blue;"></</span><span style="color: maroon;">h1</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="background: yellow;">@</span><span style="color: blue;">if</span> (Model.willAttend
== <span style="color: blue;">true</span>)<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="background: yellow;">@:</span> OK<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;">else</span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> {<o:p></o:p></span></div>
<div class="MsoNormal" style="background-position: initial initial; background-repeat: initial initial; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="background-color: white;"> </span><span style="background-color: yellow; background-position: initial initial; background-repeat: initial initial;">@:</span><span style="background-color: white;">Sorry:(</span></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> }<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"> <span style="color: blue;"></</span><span style="color: maroon;">div</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">body</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"></</span><span style="color: maroon;">html</span><span style="color: blue;">></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><br />
<!--[if !supportLineBreakNewLine]--><br />
<!--[endif]--></span><o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; margin-top: 24.0pt; mso-outline-level: 1; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><b><span style="color: #365f91; mso-font-kerning: 18.0pt;">Output</span></b><b><o:p></o:p></b></span></div>
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;">Now run the application:</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://2.bp.blogspot.com/-3hjOJ67XiYE/UwUREuDzVNI/AAAAAAAAAZw/zHIwGklkO-U/s1600/1.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="http://2.bp.blogspot.com/-3hjOJ67XiYE/UwUREuDzVNI/AAAAAAAAAZw/zHIwGklkO-U/s1600/1.png" /></a><a href="http://2.bp.blogspot.com/-3hjOJ67XiYE/UwUREuDzVNI/AAAAAAAAAZw/zHIwGklkO-U/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: Verdana, sans-serif;"></span></a></div>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<br />
<div class="MsoNormal" style="background: white; margin-bottom: 10.0pt; text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span><span style="font-family: Verdana, sans-serif;"><br /></span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<br />
<div style="text-align: right;">
<div style="text-align: justify;">
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;">When you click on “here” will open the “RegForm.cshtml”</span><br />
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<img alt="" src="data:image/png;base64,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" style="border: 0px; font-family: Verdana, sans-serif;" /></div>
</div>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/-D8ZtdVJrbCQ/UwURW5-ZvaI/AAAAAAAAAZ4/TDh3ihm5MUs/s1600/2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em; text-align: right;"><span style="font-family: Verdana, sans-serif;"><img border="0" src="http://4.bp.blogspot.com/-D8ZtdVJrbCQ/UwURW5-ZvaI/AAAAAAAAAZ4/TDh3ihm5MUs/s1600/2.png" /></span></a></div>
<div class="separator" style="clear: both; text-align: left;">
<span style="font-family: Verdana, sans-serif; text-align: justify;">Fill the form with appropriate values and click on submit button:</span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="font-family: Verdana, sans-serif; text-align: justify;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://1.bp.blogspot.com/-aJTbtQpNbMM/UwURqycdNII/AAAAAAAAAaA/34KTLBpeQOg/s1600/4.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><span style="font-family: Verdana, sans-serif;"><img border="0" src="http://1.bp.blogspot.com/-aJTbtQpNbMM/UwURqycdNII/AAAAAAAAAaA/34KTLBpeQOg/s1600/4.png" /></span></a></div>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<span style="font-family: Verdana, sans-serif;"><br /></span>
<br />
<div class="MsoNormal">
<br /></div>
</div>
<!-- Blogger automated replacement: "https://images-blogger-opensocial.googleusercontent.com/gadgets/proxy?url=http%3A%2F%2F2.bp.blogspot.com%2F-3hjOJ67XiYE%2FUwUREuDzVNI%2FAAAAAAAAAZw%2FzHIwGklkO-U%2Fs1600%2F1.png&container=blogger&gadget=a&rewriteMime=image%2F*" with "https://2.bp.blogspot.com/-3hjOJ67XiYE/UwUREuDzVNI/AAAAAAAAAZw/zHIwGklkO-U/s1600/1.png" -->Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com1tag:blogger.com,1999:blog-4700053866498083794.post-15390738733396417282014-02-18T17:09:00.001+05:302014-09-02T21:03:39.600+05:30CSS Limitations and Advantages - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">Limitations of the current capabilities of CSS include:</span></div>
<dl style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.2em;">
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Selectors are unable to ascend</span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">CSS currently offers no way to select a <i>parent</i> or <i>ancestor</i> of an element that satisfies certain criteria. CSS Selectors Level 4, which is still in Working Draft status, proposes such a selector, but only as part of the “complete” selector profile, not the “fast” profile used in dynamic CSS styling. A more advanced selector scheme (such as <span style="color: black;">XPath</span>) would enable more sophisticated style sheets. The major reasons for the CSS Working Group previously rejecting proposals for parent selectors are related to browser performance and incremental rendering issues.</span></dd>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Vertical control limitations </span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">While horizontal placement of elements is generally easy to control, vertical placement is frequently unintuitive, convoluted, or outright impossible. Simple tasks, such as centering an element vertically or getting a footer to be placed no higher than bottom of viewport, either require complicated and unintuitive style rules, or simple but widely unsupported rules.</span></dd>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Absence of expressions </span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">There is currently no ability to specify property values as simple expressions (such as <code style="background-color: #f9f9f9;">margin-left: 10% – 3em + 4px;</code>). This would be useful in a variety of cases, such as calculating the size of columns subject to a constraint on the sum of all columns. However, a working draft with a calc() value to address this limitation has been published by the CSS WG. Internet Explorer versions 5 to 7 support a proprietary expression() statement, with similar functionality. This proprietary expression() statement is no longer supported from Internet Explorer 8 onwards, except in compatibility modes. This decision was taken for "standards compliance, browser performance, and security reasons".</span></dd>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Lack of column declaration </span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">While possible in current CSS 3 (using the <code style="background-color: #f9f9f9;">column-count</code> module), layouts with multiple columns can be complex to implement in CSS 2.1. With CSS 2.1, the process is often done using floating elements, which are often rendered differently by different browsers, different computer screen shapes, and different screen ratios set on standard monitors.</span></dd>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Cannot explicitly declare new scope independently of position </span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">Scoping rules for properties such as z-index look for the closest parent element with a position:absolute or position:relative attribute. This odd coupling has undesired effects. For example, it is impossible to avoid declaring a new scope when one is forced to adjust an element's position, preventing one from using the desired scope of a parent element.</span></dd>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Pseudo-class dynamic behavior not controllable </span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">CSS implements pseudo-classes that allow a degree of user feedback by conditional application of alternate styles. One CSS pseudo-class, ":hover", is dynamic (equivalent of JavaScript "onmouseover") and has potential for abuse (e.g., implementing cursor-proximity popups), but CSS has no ability for a client to disable it (no "disable"-like property) or limit its effects (no "nochange"-like values for each property).</span></dd>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Cannot name rules </span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">There is no way to name a CSS rule, which would allow (for example) client-side scripts to refer to the rule even if its selector changes.</span></dd>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Cannot include styles from a rule into another rule </span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">CSS styles often must be duplicated in several rules to achieve a desired effect, causing additional maintenance and requiring more thorough testing.</span></dd>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;">Cannot target specific text without altering markup </span></dt>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif; font-weight: normal; line-height: 24px;"> Besides the </span><code style="background-color: #f9f9f9; font-weight: normal; line-height: 24px;">:first-letter</code><span style="font-family: Verdana, sans-serif; font-weight: normal; line-height: 24px;"> pseudo-element, one cannot target specific ranges of text without needing to utilize place-holder elements.</span></dt>
<dt style="font-weight: bold; margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif; font-weight: normal; line-height: 24px;"><br /></span></dt>
<dt style="margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;"><b>Advantages of CSS</b></span></dt>
<dt style="margin-bottom: 0.1em;"><span style="font-family: Verdana, sans-serif;"><b><br /></b></span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"></dd>
<dt style="line-height: 19.200000762939453px; margin-bottom: 0.1em;"><b><span style="font-family: Verdana, sans-serif;">Separation of content from presentation</span></b></dt>
<dd style="line-height: 19.200000762939453px; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">CSS facilitates publication of content in multiple presentation formats based on nominal parameters. Nominal parameters include explicit user preferences, different web browsers, the type of device being used to view the content (a desktop computer or mobile Internet device), the geographic location of the user and many other variables.</span></dd>
<dt style="line-height: 19.200000762939453px; margin-bottom: 0.1em;"><b style="font-family: Verdana, sans-serif;">Bandwidth</b></dt>
<dd style="line-height: 19.200000762939453px; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">A stylesheet, internal or external, specifies the style once for a range of HTML elements selected by <code style="background-color: #f9f9f9;">class</code>, type or relationship to others. This is much more efficient than repeating style information inline for each occurrence of the element. An external stylesheet is usually stored in the browser cache, and can therefore be used on multiple pages without being reloaded, further reducing data transfer over a network.</span></dd>
<dt style="line-height: 19.200000762939453px; margin-bottom: 0.1em;"><b><span style="font-family: Verdana, sans-serif;">Page reformatting</span></b></dt>
<dd style="line-height: 19.200000762939453px; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">With a simple change of one line, a different style sheet can be used for the same page. This has advantages for accessibility, as well as providing the ability to tailor a page or site to different target devices. Furthermore, devices not able to understand the styling still display the content.</span></dd>
<dt style="line-height: 19.200000762939453px; margin-bottom: 0.1em;"><b><span style="font-family: Verdana, sans-serif;">Accessibility</span></b></dt>
<dd style="line-height: 19.200000762939453px; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><span style="font-family: Verdana, sans-serif;">Without CSS, web designers must typically lay out their pages with techniques such as HTML tables that hinder accessibility for vision-impaired users </span></dd><dd style="line-height: 19.200000762939453px; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"></dd>
<dt style="margin-bottom: 0.1em;"><b><span style="font-family: Verdana, sans-serif;">Site-wide consistency</span></b></dt>
<dt style="margin-bottom: 0.1em;"><span style="color: #666666; font-family: Verdana, sans-serif;"><span style="font-style: italic;"> </span></span><span style="font-family: Verdana, sans-serif;">When CSS is used effectively, in terms of inheritance and "cascading," a global style sheet can be used to affect and style elements site-wide. If the situation arises that the styling of the elements should need to be changed or adjusted, these changes can be made by editing rules in the global style sheet. Before CSS, this sort of maintenance was more difficult, expensive and time-consuming.</span><span style="color: #666666; font-family: Verdana, sans-serif; font-size: 13px; font-style: italic;"> </span></dt>
<dd style="line-height: 1.5em; margin-bottom: 0.1em; margin-left: 1.6em; margin-right: 0px;"><h2 style="background-image: none; border-bottom-color: rgb(170, 170, 170); border-bottom-style: solid; border-bottom-width: 1px; font-size: 19px; font-weight: normal; line-height: 19.200000762939453px; margin: 0px 0px 0.6em; overflow: hidden; padding-bottom: 0.17em; padding-top: 0.5em;">
</h2>
</dd></dl>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com3tag:blogger.com,1999:blog-4700053866498083794.post-16267671883481701472014-02-18T16:53:00.002+05:302014-09-02T21:04:00.229+05:30The History of CSS - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">Style sheets have existed in one form or another since the beginnings of Standard Generalized Markup Language (SGML) in the 1980s. Cascading Style Sheets were developed as a means for creating a consistent approach to providing style information for web documents.</span></div>
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">As HTML grew, it came to encompass a wider variety of stylistic capabilities to meet the demands of web developers. This evolution gave the designer more control over site appearance, at the cost of more complex HTML. Variations in web browser implementations, such as ViolaWWW and WorldWideWeb,<sup class="reference" id="cite_ref-IEEE_7-0" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>7]</sup> made consistent site appearance difficult, and users had less control over how web content was displayed. Robert Cailliau wanted to separate the structure from the presentation.<sup class="reference" id="cite_ref-IEEE_7-1" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>7]</sup> The ideal way would be to give the user different options and transferring three different kinds of style sheets: one for printing, one for the presentation on the screen and one for the editor feature.<sup class="reference" id="cite_ref-IEEE_7-2" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>7]</sup></span></div>
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">To improve web presentation capabilities, nine different style sheet languages were proposed to the World Wide Web Consortium's (W3C) www-style mailing list. Of the nine proposals, two were chosen as the foundation for what became CSS: Cascading HTML Style Sheets (CHSS) and Stream-based Style Sheet Proposal (SSP). CHSS, a language that has some resemblance to today's CSS, was proposed by Håkon Wium Lie in October 1994. Bert Bos was working on a browser called Argo, which used its own style sheet language called SSP.<sup class="reference" id="cite_ref-WWW3_8-0" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>8]</sup> Lie and Yves Lafon joined Dave Raggett to expand the Arena browser for supporting CSS as a testbed application for the W3C.<sup class="reference" id="cite_ref-9" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>9]</sup><sup class="reference" id="cite_ref-10" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>10]</sup><sup class="reference" id="cite_ref-11" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>11]</sup> Lie and Bos worked together to develop the CSS standard (the 'H' was removed from the name because these style sheets could also be applied to other markup languages besides HTML).<sup class="reference" id="cite_ref-chapter20_12-0" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>12]</sup></span></div>
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">Unlike existing style languages like DSSSL and FOSI, CSS allowed a document's style to be influenced by multiple style sheets. One style sheet could inheritor "cascade" from another, permitting a mixture of stylistic preferences controlled equally by the site designer and user.</span></div>
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">Lie's proposal was presented at the "Mosaic and the Web" conference (later called WWW2) in Chicago, Illinois in 1994, and again with Bert Bos in 1995.<sup class="reference" id="cite_ref-chapter20_12-1" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>12]</sup>Around this time the W3C was already being established, and took an interest in the development of CSS. It organized a workshop toward that end chaired by Steven Pemberton. This resulted in W3C adding work on CSS to the deliverables of the HTML editorial review board (ERB). Lie and Bos were the primary technical staff on this aspect of the project, with additional members, including Thomas Reardon of Microsoft, participating as well. In August 1996 Netscape Communication Corporation presented an alternative style sheet language called JavaScript Style Sheets(JSSS).<sup class="reference" id="cite_ref-chapter20_12-2" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>12]</sup> The spec was never finished and is deprecated.<sup class="reference" id="cite_ref-13" style="background-image: none; line-height: 1em; text-decoration: none; unicode-bidi: -webkit-isolate;"><span style="white-space: nowrap;">[</span>13]</sup> By the end of 1996, CSS was ready to become official, and the CSS level 1 Recommendation was published in December.</span></div>
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">Development of HTML, CSS, and the DOM had all been taking place in one group, the HTML Editorial Review Board (ERB). Early in 1997, the ERB was split into three working groups: HTML Working group, chaired by Dan Connolly of W3C; DOM Working group, chaired by Lauren Wood of SoftQuad; and CSS Working group, chaired by Chris Lilley of W3C.</span></div>
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">The CSS Working Group began tackling issues that had not been addressed with CSS level 1, resulting in the creation of CSS level 2 on November 4, 1997. It was published as a W3C Recommendation on May 12, 1998. CSS level 3, which was started in 1998, is still under development as of 2014.</span></div>
<div style="background-color: white; line-height: 19.200000762939453px; margin-bottom: 0.5em; margin-top: 0.4em;">
<span style="font-family: Verdana, sans-serif;">In 2005 the CSS Working Groups decided to enforce the requirements for standards more strictly. This meant that already published standards like CSS 2.1, CSS 3 Selectors and CSS 3 Text were pulled back from Candidate Recommendation to Working Draft level.</span></div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com0tag:blogger.com,1999:blog-4700053866498083794.post-4088076926070091592014-02-17T13:57:00.004+05:302014-09-02T21:04:25.208+05:30SQL Server Data Types - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 787px;">
<colgroup><col style="mso-width-alt: 4534; mso-width-source: userset; width: 93pt;" width="124"></col>
<col style="mso-width-alt: 18212; mso-width-source: userset; width: 374pt;" width="498"></col>
<col style="mso-width-alt: 6034; mso-width-source: userset; width: 124pt;" width="165"></col>
</colgroup><tbody>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt; width: 93pt;" width="124"><span style="color: blue; font-family: Verdana, sans-serif;"><b>Data type</b></span></td>
<td style="width: 374pt;" width="498"><span style="color: blue; font-family: Verdana, sans-serif;"><b>Description</b></span></td>
<td style="width: 124pt;" width="165"><span style="color: blue; font-family: Verdana, sans-serif;"><b>Storage</b></span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td colspan="3" height="20" style="height: 15.0pt;"><span style="color: blue; font-family: Verdana, sans-serif;"><i>String types:</i></span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">char(n)</span></td>
<td><span style="font-family: Verdana, sans-serif;">Fixed width character string. Maximum 8,000 characters</span></td>
<td><span style="font-family: Verdana, sans-serif;">Defined width</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">varchar(n)</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width character string. Maximum 8,000 characters</span></td>
<td><span style="font-family: Verdana, sans-serif;">2 bytes + number of chars</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">varchar(max)</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width character string. Maximum 1,073,741,824 characters</span></td>
<td><span style="font-family: Verdana, sans-serif;">2 bytes + number of chars</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">text</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width character string. Maximum 2GB of text data</span></td>
<td><span style="font-family: Verdana, sans-serif;">4 bytes + number of chars</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">nchar</span></td>
<td><span style="font-family: Verdana, sans-serif;">Fixed width Unicode string. Maximum 4,000 characters</span></td>
<td><span style="font-family: Verdana, sans-serif;">Defined width x 2</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">nvarchar</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width Unicode string. Maximum 4,000 characters</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">nvarchar(max)</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width Unicode string. Maximum 536,870,912 characters</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">ntext</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width Unicode string. Maximum 2GB of text data</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">bit</span></td>
<td><span style="font-family: Verdana, sans-serif;">Allows 0, 1, or NULL</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">binary(n)</span></td>
<td><span style="font-family: Verdana, sans-serif;">Fixed width binary string. Maximum 8,000 bytes</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">varbinary</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width binary string. Maximum 8,000 bytes</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">varbinary(max)</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width binary string. Maximum 2GB</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">image</span></td>
<td><span style="font-family: Verdana, sans-serif;">Variable width binary string. Maximum 2GB</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td colspan="3" height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><i>Number types:</i></span></span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">tinyint</span></td>
<td><span style="font-family: Verdana, sans-serif;">Allows whole numbers from 0 to 255</span></td>
<td><span style="font-family: Verdana, sans-serif;">1 byte</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">smallint</span></td>
<td><span style="font-family: Verdana, sans-serif;">Allows whole numbers between -32,768 and 32,767</span></td>
<td><span style="font-family: Verdana, sans-serif;">2 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">int</span></td>
<td><span style="font-family: Verdana, sans-serif;">Allows whole numbers between -2,147,483,648 and 2,147,483,647</span></td>
<td><span style="font-family: Verdana, sans-serif;">4 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">bigint</span></td>
<td><span style="font-family: Verdana, sans-serif;">Allows whole numbers between -9,223,372,036,854,775,808 and
9,223,372,036,854,775,807</span></td>
<td><span style="font-family: Verdana, sans-serif;">8 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">decimal(p,s)</span></td>
<td class="xl66" rowspan="11" style="width: 374pt;" width="498"><span style="font-family: Verdana, sans-serif;">Fixed precision and
scale numbers.<br />
Allows numbers from -10^38 +1 to 10^38 –1.<br />
<br />
The p parameter indicates the maximum total number of digits that can be
stored (both to the left and to the right of the decimal point). p must be a
value from 1 to 38. Default is 18.<br />
<br />
The s parameter indicates the maximum number of digits stored to the right
of the decimal point. s must be a value from 0 to p. Default value is 0</span></td>
<td><span style="font-family: Verdana, sans-serif;">5-17
bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">numeric(p,s)</span></td>
<td class="xl66" rowspan="12" style="width: 374pt;" width="498"><span style="font-family: Verdana, sans-serif;">Fixed precision and
scale numbers.<br />
Allows numbers from -10^38 +1 to 10^38 –1.<br />
<br />
The p parameter indicates the maximum total number of digits that can be
stored (both to the left and to the right of the decimal point). p must be a
value from 1 to 38. Default is 18.<br />
<br />
The s parameter indicates the maximum number of digits stored to the right
of the decimal point. s must be a value from 0 to p. Default value is 0</span></td>
<td class="xl65"><span style="font-family: Verdana, sans-serif;">5-17 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">smallmoney</span></td>
<td><span style="font-family: Verdana, sans-serif;">Monetary data from -214,748.3648 to 214,748.3647</span></td>
<td><span style="font-family: Verdana, sans-serif;">4 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">money</span></td>
<td><span style="font-family: Verdana, sans-serif;">Monetary data from -922,337,203,685,477.5808 to 922,337,203,685,477.5807</span></td>
<td><span style="font-family: Verdana, sans-serif;">8 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td class="xl65" height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">float(n)</span></td>
<td class="xl66" rowspan="6" style="width: 374pt;" width="498"><span style="font-family: Verdana, sans-serif;">Floating precision
number data from -1.79E + 308 to 1.79E + 308.<br />
The n parameter indicates whether the field should hold 4 or 8 bytes.
float(24) holds a 4-byte field and float(53) holds an 8-byte field. Default
value of n is 53.</span></td>
<td class="xl65"><span style="font-family: Verdana, sans-serif;">4 or 8 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">real</span></td>
<td><span style="font-family: Verdana, sans-serif;">Floating precision number data from -3.40E + 38 to 3.40E + 38</span></td>
<td><span style="font-family: Verdana, sans-serif;">4 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td colspan="3" height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;"><span style="color: blue;"><i>Date types:</i></span></span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">datetime</span></td>
<td><span style="font-family: Verdana, sans-serif;">From January 1, 1753 to December 31, 9999 with an accuracy of 3.33
milliseconds</span></td>
<td><span style="font-family: Verdana, sans-serif;">8 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">datetime2</span></td>
<td><span style="font-family: Verdana, sans-serif;">From January 1, 0001 to December 31, 9999 with an accuracy of 100
nanoseconds</span></td>
<td><span style="font-family: Verdana, sans-serif;">6-8 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">smalldatetime</span></td>
<td><span style="font-family: Verdana, sans-serif;">From January 1, 1900 to June 6, 2079 with an accuracy of 1 minute</span></td>
<td><span style="font-family: Verdana, sans-serif;">4 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">date</span></td>
<td><span style="font-family: Verdana, sans-serif;">Store a date only. From January 1, 0001 to December 31, 9999</span></td>
<td><span style="font-family: Verdana, sans-serif;">3 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">time</span></td>
<td><span style="font-family: Verdana, sans-serif;">Store a time only to an accuracy of 100 nanoseconds</span></td>
<td><span style="font-family: Verdana, sans-serif;">3-5 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">datetimeoffset</span></td>
<td><span style="font-family: Verdana, sans-serif;">The same as datetime2 with the addition of a time zone offset</span></td>
<td><span style="font-family: Verdana, sans-serif;">8-10 bytes</span></td>
</tr>
<tr height="20" style="height: 15.0pt; mso-height-source: userset;">
<td class="xl65" height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">timestamp</span></td>
<td class="xl66" rowspan="3" style="width: 374pt;" width="498"><span style="font-family: Verdana, sans-serif;">Stores a unique number
that gets updated every time a row gets created or modified. The timestamp
value is based upon an internal clock and does not correspond to real time.
Each table may have only one timestamp variable</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td colspan="3" height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;"><i><span style="color: blue;">Other data types:</span></i></span></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">sql_variant</span></td>
<td class="xl66" rowspan="3" style="width: 374pt;" width="498"><span style="font-family: Verdana, sans-serif;">Stores up to 8,000
bytes of data of various data types, except text, ntext, and timestamp</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">uniqueidentifier</span></td>
<td><span style="font-family: Verdana, sans-serif;">Stores a globally unique identifier (GUID)</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">xml</span></td>
<td><span style="font-family: Verdana, sans-serif;">Stores XML formatted data. Maximum 2GB</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">cursor</span></td>
<td><span style="font-family: Verdana, sans-serif;">Stores a reference to a cursor used for database operations</span></td>
<td></td>
</tr>
<tr height="20" style="height: 15.0pt;">
<td height="20" style="height: 15.0pt;"><span style="font-family: Verdana, sans-serif;">table</span></td>
<td><span style="font-family: Verdana, sans-serif;">Stores a result-set for later processing</span></td>
<td></td>
</tr>
</tbody></table>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com0tag:blogger.com,1999:blog-4700053866498083794.post-16087827239331773232014-02-05T00:42:00.001+05:302014-09-02T21:04:45.859+05:30.NET - Web Services Interview Questions - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;">What is a "Web Service"?</span></b></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;"><br /></span></b></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><span style="background-color: white;">A "Web Service" is a .NET component that replies to HTTP requests that are formatted using SOAP syntax. </span><span style="background-color: white;">Web services are one of the cornerstones of the .NET initiative in that they allow a degree of interoperability among applications over the internet that was inconceivable before.</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;">How are web services implemented in .NET?</span></b></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;"><br /></span></b></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">Web services are implemented as HTTP Handlers that intercept requests to .asmx files.</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;">What are the drawbacks of "Response Caching"?</span></b></span></div>
<div>
<span style="background-color: white;"><span class="Apple-tab-span" style="white-space: pre;"><span style="font-family: Verdana, sans-serif;"> </span></span></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><span style="background-color: white;">If the method or accepts a wide range of values, response caching might be inefficient or even wasteful because a great deal of information might be stored in caching. </span><span style="background-color: white;">If the method depends on other information not supplied in parameters (like user authentication or session data), it will be bypassed.</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">The method will be bypassed even if it needs to perform actions other than returning values (like writing to a log file)</span></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;">How to overcome the limitations of response caching while providing an acceptable level of caching?</span></b></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;"><br /></span></b></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">By using data caching (System.Web.Caching.Cach)</span></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;">What are the protocols supported by web services built with ASP.NET to exchange data?</span></b></span></div>
<div>
<span style="background-color: white;"><span class="Apple-tab-span" style="white-space: pre;"><span style="font-family: Verdana, sans-serif;"> </span></span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">HTTP GET</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">HTTP POST</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">SOAP</span></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;">What are the limitations of using GET & POST to communicate with a web service?</span></b></span></div>
<div>
<span style="background-color: white;"><span class="Apple-tab-span" style="white-space: pre;"><span style="font-family: Verdana, sans-serif;"> </span></span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">It is less secured than SOAP.</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">It prevents the user from passing structures and objects as arguments</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">It prevents the user from passing ByRef arguments</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;">How to make a class accessible as a web service?</span></b></span></div>
<div>
<span style="background-color: white;"><span class="Apple-tab-span" style="white-space: pre;"><span style="font-family: Verdana, sans-serif;"> </span></span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">-By making the class inherits from the System.Web.Services.WebService class</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">-By qualifying the class with the WebService attribute</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"> Inheriting from the WebService class is beneficiary in that it allows the class to access the ASP.NET context and other useful objects such as the session and application objects. On the other hand, qualifying the class with the WebService attribute allows for setting additional properties of the web service such as its description and namespace.</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"> <span class="Apple-tab-span" style="white-space: pre;"> </span></span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"> [WebService]</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"> public class TestService : System.Web.Services.WebService</span></span></div>
<div>
<span style="font-family: Verdana, sans-serif;"><br /></span></div>
<div>
<span style="background-color: white;"><b><span style="font-family: Verdana, sans-serif;">How to make a method of a web service class accessible through the internet?</span></b></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"><br /></span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;">By qualifying the method with the WebMethod attribute.</span></span></div>
<div>
</div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"> [WebMethod()]</span></span></div>
<div>
<span style="background-color: white;"><span style="font-family: Verdana, sans-serif;"> public string MethodName()</span></span></div>
<div>
<br /></div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com2tag:blogger.com,1999:blog-4700053866498083794.post-16265291079190857872014-02-04T01:28:00.001+05:302014-09-02T21:05:05.816+05:30Recommended Hardware and Software Specifications For Sql Server 2012 - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="background-color: white; box-sizing: border-box; direction: ltr; line-height: 1.6; margin-bottom: 1.25em; padding: 0px; text-rendering: optimizelegibility;">
<span style="font-family: Verdana, sans-serif;">Microsoft has come out with a list of specifications needed to install and run SQL Server 2012.</span></div>
<div style="background-color: white; box-sizing: border-box; direction: ltr; line-height: 1.6; margin-bottom: 1.25em; padding: 0px; text-rendering: optimizelegibility;">
<span style="font-family: Verdana, sans-serif;">You would need: <strong style="box-sizing: border-box; line-height: inherit;"><br style="box-sizing: border-box;" /></strong></span></div>
<ol style="background-color: white; box-sizing: border-box; direction: ltr; line-height: 1.6; list-style-position: outside; margin: 0px 0px 1.25em; padding: 0px 0px 0px 1.3em;">
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;">More than 3.6 gigabytes of free space on your hard drive.</span></li>
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;">64-bit:<br style="box-sizing: border-box;" />Intel Xeon (supported by Intel EM64T), AMD Athlon 64, AMD Opteron, or Intel Pentium IV (supported by EM64T with at least 2.0 GHz)</span></li>
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;">32-bit<br style="box-sizing: border-box;" />Compatible with Pentium III (at least 2.0 GHz)</span></li>
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;">Recommended RAM: At least 2 gigabytes or whatever is the highest supported.</span></li>
</ol>
<div style="background-color: white; box-sizing: border-box; direction: ltr; line-height: 1.6; margin-bottom: 1.25em; padding: 0px; text-rendering: optimizelegibility;">
<span style="font-family: Verdana, sans-serif;">Software you need to install before installing SQL Server 2012</span></div>
<ul style="background-color: white; box-sizing: border-box; direction: ltr; line-height: 1.6; list-style-position: outside; margin: 0px 0px 1.25em; padding: 0px;">
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;">.Net Framework 4.0</span></li>
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;">Hyper-V (needed for virtualization)</span></li>
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;">Windows PowerShell 2.0 (which you could download at <a href="http://go.microsoft.com/?linkid=9745645" style="box-sizing: border-box; line-height: inherit; text-decoration: none;">http://go.microsoft.com/?linkid=9745645</a>)</span></li>
</ul>
<div style="background-color: white; box-sizing: border-box; direction: ltr; line-height: 1.6; margin-bottom: 1.25em; padding: 0px; text-rendering: optimizelegibility;">
<span style="font-family: Verdana, sans-serif;"><strong style="box-sizing: border-box; line-height: inherit;"></strong></span></div>
<div style="background-color: white; box-sizing: border-box; direction: ltr; line-height: 1.6; margin-bottom: 1.25em; padding: 0px; text-rendering: optimizelegibility;">
<strong style="box-sizing: border-box; line-height: inherit;"><span style="font-family: Verdana, sans-serif;">Other tips:</span></strong></div>
<ol style="background-color: white; box-sizing: border-box; direction: ltr; line-height: 1.6; list-style-position: outside; margin: 0px 0px 1.25em; padding: 0px 0px 0px 1.3em;">
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;"><strong style="box-sizing: border-box; line-height: inherit;">Use NTFS file system.</strong><br style="box-sizing: border-box;" />While SQL Server 2012 works on FAT32 systems, for this application it is not recommended. You should also avoid compressed or mapped drives.</span></li>
<li style="box-sizing: border-box; direction: ltr; margin: 0px; padding: 0px;"><span style="font-family: Verdana, sans-serif;"><strong style="box-sizing: border-box; line-height: inherit;">Install the no-reboot package from Microsoft.</strong><br style="box-sizing: border-box;" />This is typically bundled in with Windows 7 SP1, but you can download the package here: <a href="http://go.microsoft.com/fwlink/?LinkId=198092" style="box-sizing: border-box; line-height: inherit; text-decoration: none;">http://go.microsoft.com/fwlink/?LinkId=198092</a>.</span></li>
</ol>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com0tag:blogger.com,1999:blog-4700053866498083794.post-53838701790969805422014-02-04T01:22:00.001+05:302014-09-02T21:05:23.596+05:30New Features of SQL Server 2012 - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">1. AlwaysOn Availability Groups</strong> -- This feature takes database mirroring to a whole new level. With AlwaysOn, users will be able to fail over multiple databases in groups instead of individually. Also, secondary copies will be readable, and can be used for database backups. The big win is that your DR environment no longer needs to sit idle.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">2. Windows Server Core Support </strong>-- If you don't know what Windows Server Core is, you may want to come up to speed before Windows 8 (MS is making a push back to the command line for server products). Core is the GUI-less version of Windows that uses DOS and PowerShell for user interaction. It has a much lower footprint (50% less memory and disk space utilization), requires fewer patches, and is more secure than the full install. Starting with SQL 2012, it is supported for SQL Server.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">3. Columnstore Indexes</strong> -- This a cool new feature that is completely unique to SQL Server. They are special type of read-only index designed to be use with Data Warehouse queries. Basically, data is grouped and stored in a flat, compressed column index, greatly reducing I/O and memory utilization on large queries.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">4. User-Defined Server Roles</strong> -- DBAs have always had the ability to create custom database role, but never server wide. For example, if the DBA wanted to give a development team read/write access to every database on a shared server, traditionally the only ways to do it were either manually, or using undocumented procedures. Neither of which were good solutions. Now, the DBA can create a role, which has read/write access on every DB on the server, or any other custom server wide role.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">5. Enhanced Auditing Features</strong> -- Audit is now available in all editions of SQL Server. Additionally, users can define custom audit specifications to write custom events into the audit log. New filtering features give greater flexibility in choosing which events to write to the log.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">6. BI Semantic Model</strong> -- This is replacing the Analysis Services Unified Dimensional Model (or cubes most people referred to them). It's a hybrid model that allows one data model will support all BI experiences in SQL Server. Additionally, this will allow for some really neat text infographics</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">7. Sequence Objects</strong> -- For those folks who have worked with Oracle, this has been a long requested feature. A sequence is just an object that is a counter -- a good example of it's use would be to increment values in a table, based a trigger. SQL has always had similar functionality with identity columns, but now this is a discrete object.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">8. Enhanced PowerShell Support</strong> -- Windows and SQL Server admins should definitely start brushing up on their PowerShell scripting skills. Microsoft is driving a lot of development effort into instrumenting all of their server-based products with PowerShell. SQL 2008 gave DBAs some exposure to it, but there are many more in cmdlets in SQL 2012.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">9. Distributed Replay</strong> -- Once again this is answer to a feature that Oracle released (Real Application Testing). However, and in my opinion where the real value proposition of SQL Server is, in Oracle it is a (very expensive) cost option to Enterprise Edition. With SQL, when you buy your licenses for Enterprise Edition, you get everything. Distributed replay allows you to capture a workload on a production server, and replay it on another machine. This way changes in underlying schemas, support packs, or hardware changes can be tested under production conditions.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">10. PowerView</strong> -- You may have heard of this under the name "Project Crescent" it is a fairly powerful self-service BI toolkit that allows users to create mash ups of BI reports from all over the Enterprise.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">11. SQL Azure Enhancements</strong> -- These don't really go directly with the release of SQL 2012, but Microsoft is making some key enhancements to SQL Azure. Reporting Services for Azure will be available, along with backup to the Windows Azure data store, which is a huge enhancement. The maximum size of an Azure database is now up to 150G. Also Azure data sync allows a better hybrid model of cloud and on-premise solutions</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;"><strong style="border: 0px; font-style: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">12. Big Data Support</strong> -- I saved the biggest for last, introduced at the PASS (Professional Association for SQL Server) conference last year, Microsoft announced a partnership with Hadoop provider Cloudera. One part of this involves MS releasing a ODBC driver for SQL Server that will run on a Linux platform. Additionally, Microsoft is building connectors for Hadoop, which is an extremely popular NoSQL platform. With this announcement, Microsoft has made a clear move into this very rapidly growing space.</span></div>
<div style="background-color: white; border: 0px; color: #333333; margin-bottom: 10px; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="font-family: Verdana, sans-serif;">SQL 2012 is a big step forward for Microsoft -- the company is positioning itself to be a leader in availability and in the growing area of big data. As a database professional, I look forward to using SQL 2012 to bring new solutions to my clients.</span></div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com0tag:blogger.com,1999:blog-4700053866498083794.post-71284343795122716732013-11-10T21:26:00.000+05:302014-09-02T21:05:40.903+05:30Most Frequently Asked Interview Questions - Asp.Net 3 + Years - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><b><span style="color: blue;">What is asp.net life cycle ?</span> </b></span></span>
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><br /></span></span>
<br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><b>PreInit</b><br /><br />The properties like IsPostBack have been set at this time.<br /><br />This event will be used when we want to:
<br />
</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Set master page dynamically.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Set theme dynamically.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Read or set profile property values.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This event is also preferred if want to create any dynamic controls.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>Init</b><br />
</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Raised after all the controls have been initialized with their default values and any skin settings have been applied.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Fired for individual controls first and then for page.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>LoadViewState</b><br />
</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Fires only if IsPostBack is true.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Values stored in HiddenField with id as _ViewState decoded and stored into corresponding controls.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>LoadPostData</b><br /><br />Some controls like:<br />
</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="letter-spacing: 0.75pt;">Fires only if IsPostBack is true.</span></span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Some controls like Textbox are implemented from IPostBackDataHandler and this fires only for such controls.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In this event page processes postback data included in the request object pass it to the respective controls.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>PreLoad</b><br />
</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Used only if want to inject logic before actual page load starts.</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>Load</b><br />
</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Used normally to perform tasks which are common to all requests, such as setting up a database query.</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>Control events</b><br />
</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This event is fired when IsPostBack is true.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Use
these events to handle specific control events, such as a Button
control's Click event or a TextBox control's TextChanged event.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>PreRender</b>Raised
after the page object has created all the controls that are required
for rendering which includes child controls and composite controls.<br />
</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Use
the event to make final changes to the contents of the page or its
controls before the values are stored into the viewstate and the
rendering stage begins.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Mainly used when we want to inject custom JavaScript logic.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>SaveViewState</b><br />
</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">All the control values that support viewstate are encoded and stored into the viewstate.</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>Render</b>Generates output (HTML) to be rendered at the client side.<br />
</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">We can add custom HTML to the output if we want here.</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
<b>Unload</b><br />
</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Fired for individual controls first and then for page.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="font-size: small;"> 2. Used to perform cleanup work like closing open files and database connections. </span></span></span><br />
<br />
<span style="color: blue;"><b><span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="font-size: small;"> </span></span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span class="BlogsWelcomeHeading" id="ctl00_ContentMain_BlogDetailControl1_LabelBlogTitle">Difference between ASP.NET HttpHandler and HttpModule</span></span></span></b></span><br />
<br />
<span style="color: blue;"><i><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span class="BlogsWelcomeHeading" id="ctl00_ContentMain_BlogDetailControl1_LabelBlogTitle"><span style="font-size: x-small;"><span style="color: black;"><span id="ctl00_ContentMain_BlogDetailControl1_LabelBlogDetail">What are http handlers and modules.
And in which condition which one is suitable. For that first we need to
understand when user request application resource to web server, what happened?
The user requests for a resource on web server. The web server examines the
file name extension of the requested file, and determines which ISAPI extension
should handle the request. Then the request is passed to the appropriate ISAPI
extension. For example when an .aspx page is requested it is passed to ASP.Net
page handler. Then Application domain is created and after that different
ASP.Net objects like Httpcontext, HttpRequest, HttpResponse are created. Then
instance of HttpApplication is created and also instance of any configured
modules. One can register different events of HttpApplication class like
BeginRequest, AuthenticateRequest, AuthorizeRequest, ProcessRequest etc.</span></span></span></span></span></span></i><b><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span class="BlogsWelcomeHeading" id="ctl00_ContentMain_BlogDetailControl1_LabelBlogTitle"> </span></span></span></b></span><br />
<br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="font-size: small;"><span id="ctl00_ContentMain_BlogDetailControl1_LabelBlogDetail"></span></span></span></span><br />
<div class="MsoNormal">
<span style="font-size: small;"><b>HTTP Handler</b></span></div>
<div class="MsoNormal">
<br /></div>
<span style="font-size: small;"> </span><br />
<div class="MsoNormal">
<span style="font-size: small;">HTTP Handler is the process which runs in response to a HTTP
request. So whenever user requests a file it is processed by the handler based
on the extension. So, custom http handlers are created when you need to special
handling based on the file name extension. Let's consider an example to create
RSS for a site. So, create a handler that generates RSS-formatted XML. Now bind
the .rss extension to the custom handler.</span></div>
<span style="font-size: small;">
</span>
<div class="MsoNormal">
<span style="font-size: small;"><br /></span></div>
<span style="font-size: small;">
<div class="MsoNormal">
<b>HTTP Modules</b></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
HTTP Modules are plugged into the life cycle of a request.
So when a request is processed it is passed through all the modules in the
pipeline of the request. So generally http modules are used for:</div>
<div class="MsoNormal">
<i>Security</i>: For
authenticating a request before the request is handled.</div>
<div class="MsoNormal">
<i>Statistics and Logging</i>:
Since modules are called for every request they can be used for gathering
statistics and for logging information.</div>
<div class="MsoNormal">
<i>Custom header</i>: Since response can be modified, one can add
custom header information to the response.</div>
</span><br />
<span style="color: blue;"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><b>More clear difference between </b></span></span></span><span dir="ltr" id="sites-page-title"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><b><span style="color: blue;">HttpHandler and HttpModule for experience guys</span></b></span></span></span><br />
<br />
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="font-weight: bold; line-height: 20px;">HttpHandler:</span></span></span></span></div>
<div dir="ltr">
</div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"></span><span style="line-height: 20px;"><span style="color: magenta;">Meaning</span></span><span style="font-style: italic; line-height: 20px;"><span style="color: magenta;">:</span>- </span><span style="line-height: 20px;">An
ASP.NET HTTP handler is the process (frequently referred to as the
"endpoint") that runs in response to a request made to an ASP.NET Web
application. The most common handler is an ASP.NET page handler that
processes .aspx files. When users request an .aspx file, the request is
processed by the page through the page handler. We can create our own
HTTP handlers that render custom output to the browser.In order to
create a Custom HTTP Handler,we need to Implement IHttpHandler
interface(synchronous handler) or</span><br style="line-height: 20px;" /><span style="line-height: 20px;">Implement IHttpAsyncHandler(asynchronous handler).</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">2.</span><span style="font-style: italic; line-height: 20px;">When to use HTTP handlers:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">RSS
feeds: To create an RSS feed for a Web site, we can create a handler
that emits RSS-formatted XML. We can then bind a file name extension
such as .rss to the custom handler. When users send a request to your
site that ends in .rss, ASP.NET calls our handler to process the
request.</span><br style="line-height: 20px;" /><span style="line-height: 20px;">Image
server: If we want a Web application to serve images in a variety of
sizes, we can write a custom handler to resize images and then send them
to the user as the handler’s response.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">3.</span><span style="font-style: italic; line-height: 20px;">How to develop an ASP.NET handler:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">All we need is implementing IHttpHandler interface</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">public class MyHandler :IHttpHandler</span><br style="line-height: 20px;" /><span style="line-height: 20px;">{</span><br style="line-height: 20px;" /><span style="line-height: 20px;">public bool IsReusable</span><br style="line-height: 20px;" /><span style="line-height: 20px;">{</span><br style="line-height: 20px;" /><span style="line-height: 20px;">get { return false; }</span><br style="line-height: 20px;" /><span style="line-height: 20px;">}</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">public void ProcessRequest(HttpContext context)</span><br style="line-height: 20px;" /><span style="line-height: 20px;">{</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">}</span><br style="line-height: 20px;" /><span style="line-height: 20px;">}</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">4.</span><span style="font-style: italic; line-height: 20px;">Number of HTTP handler called:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">During the processing of an http request, only one HTTP handler will be called.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">5.</span><span style="font-style: italic; line-height: 20px;">Processing Sequence:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">In the asp.net request pipe line ,http handler comes after http Module and it is the end point objects in ASP.NET pipeline.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">6.</span><span style="font-style: italic; line-height: 20px;">What it does actually?</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">HTTP Handler actually processes the request and produces the response</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">7.</span><span style="font-style: italic; line-height: 20px;">HTTP Handler implement following Methods and Properties:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">Process
Request: This method is called when processing asp.net requests. Here
you can perform all the things related to processing request.</span><br style="line-height: 20px;" /><span style="line-height: 20px;">IsReusable:
This property is to determine whether same instance of HTTP Handler can
be used to fulfill another request of same type.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">8. </span><span style="font-style: italic; line-height: 20px;">Configuring HTTP handler in web.config :</span><br style="line-height: 20px;" /><span style="line-height: 20px;">We can use <httpHandlers> and <add> nodes for adding HTTP</span><br style="line-height: 20px;" /><span style="line-height: 20px;">handlers to our Web applications. In fact the handlers are</span><br style="line-height: 20px;" /><span style="line-height: 20px;">listed with <add> nodes in between <httpHandlers> and</span><br style="line-height: 20px;" /><span style="line-height: 20px;"></httpHandlers> nodes.</span><br style="line-height: 20px;" /><span style="line-height: 20px;">Ex: <httpHandlers></span><br style="line-height: 20px;" /><span style="line-height: 20px;"><add verb="supported http verbs" path="path"</span><br style="line-height: 20px;" /><span style="line-height: 20px;">type="namespace.classname, assemblyname" /></span><br style="line-height: 20px;" /><span style="line-height: 20px;"><httpHandlers></span><br style="line-height: 20px;" /><span style="line-height: 20px;">(In this verb=GET/POST/HEAD path=path for</span><br style="line-height: 20px;" /><span style="line-height: 20px;">incoming HTTP requests type=…)</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;">HttpModule:</span></span></span></span></div>
<div dir="ltr">
</div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="color: magenta;"><span style="line-height: 20px;"></span><span style="line-height: 20px;">Meaning</span></span><span style="font-style: italic; line-height: 20px;">:- </span><span style="line-height: 20px;">An
HTTP module is an assembly that is called on every request that is made
to our application. HTTP modules are called as part of the ASP.NET
request pipeline and have access to life-cycle events throughout the
request. HTTP modules examine incoming and outgoing requests and take
action based on the request.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">2.</span><span style="font-style: italic; line-height: 20px;">When to use HTTP modules:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">Security:
Because we can examine incoming requests, an HTTP module can perform
custom authentication or other security checks before the requested
page, XML Web service, or handler is called. In Internet Information
Services (IIS) 7.0 running in Integrated mode, we can extend forms
authentication to all content types in an application.</span><br style="line-height: 20px;" /><span style="line-height: 20px;">Statistics
and logging: Because HTTP modules are called on every request, we can
gather request statistics and log information in a centralized module,
instead of in individual pages.</span><br style="line-height: 20px;" /><span style="line-height: 20px;">Custom
headers or footers: Because we can modify the outgoing response, we can
insert content such as custom header information into every page or XML
Web service response.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">3.</span><span style="font-style: italic; line-height: 20px;">How to develop a Http Module:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">All we need is implementing System.Web.IHttpModule interface.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">public class MyHttpModule : IHttpModule</span><br style="line-height: 20px;" /><span style="line-height: 20px;">{</span><br style="line-height: 20px;" /><span style="line-height: 20px;">public void Dispose()</span><br style="line-height: 20px;" /><span style="line-height: 20px;">{</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">}</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">public void Init(HttpApplication context)</span><br style="line-height: 20px;" /><span style="line-height: 20px;">{</span><br style="line-height: 20px;" /><span style="line-height: 20px;">//here we have to define handler for events such as BeginRequest ,PreRequestHandlerExecute ,EndRequest,AuthorizeRequest and ....</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">}</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">// you need to define event handlers here</span><br style="line-height: 20px;" /><span style="line-height: 20px;">}</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">4.</span><span style="font-style: italic; line-height: 20px;">Number of HTTP module called:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">Whereas more than one HTTP modules may be called. </span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">5. </span><span style="font-style: italic; line-height: 20px;">Processing Sequence:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">In the asp.net request pipe line, http Module comes first.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">6.</span><span style="font-style: italic; line-height: 20px;">What it does actually?</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">HTTP module can work on request before and on the response after HTTP Handler </span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">7.</span><span style="font-style: italic; line-height: 20px;">Http Module implements following Methods and Properties:</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">InIt: This method is used for implementing events of HTTP Modules in HTTPApplication object.</span><br style="line-height: 20px;" /><span style="line-height: 20px;">Dispose: This method is used perform cleanup before Garbage Collector destroy everything.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">8.</span><span style="font-style: italic; line-height: 20px;">Configuring HTTP Modules in web.config:</span><br style="line-height: 20px;" /><span style="line-height: 20px;">Ex: <system.web></span><br style="line-height: 20px;" /><span style="line-height: 20px;"><httpModules></span><br style="line-height: 20px;" /><span style="line-height: 20px;"><add name="MyModule"</span><br style="line-height: 20px;" /><span style="line-height: 20px;">type="MyModule.SyncModule, MyModule" /></span><br style="line-height: 20px;" /><span style="line-height: 20px;"></httpModules></span><br style="line-height: 20px;" /><span style="line-height: 20px;"></system.web></span></span></span></span></div>
<div dir="ltr">
</div>
<div dir="ltr">
<br />
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"></span><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Describe the role of inetinfo.exe, aspnet_isapi.dll and aspnet_wp.exe in the page loading process. </span></span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">inetinfo.exe
is the Microsoft IIS server running, handling ASP.NET requests among
other things. When an ASP.NET request is received (usually a file with
.aspx extension),the ISAPI filter aspnet_isapi.dll takes care of it by
passing the request to the actual worker process aspnet_wp.exe. </span></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"> </span><br style="line-height: 20px;" /><span style="line-height: 20px;"></span><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What’s the difference between Response.Write() and Response.Output.Write()?</span><span style="line-height: 20px;"> </span></span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">The latter one allows you to write formatted output. </span></span></span></span></div>
<div dir="ltr">
</div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"></span><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What methods are fired during the page load? </span></span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">Init() - when the page is instantiated, </span><br style="line-height: 20px;" /><span style="line-height: 20px;">Load() - when the page is loaded into server memory, </span><br style="line-height: 20px;" /><span style="line-height: 20px;">PreRender() - the brief moment before the page is displayed to the user as HTML, </span><br style="line-height: 20px;" /><span style="line-height: 20px;">Unload() - when page finishes loading. </span></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"> </span><br style="line-height: 20px;" /><span style="line-height: 20px;"></span><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Where does the Web page belong in the .NET Framework class hierarchy? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">System.Web.UI.Page </span></span></span></span></div>
<div dir="ltr">
</div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"></span><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Where do you store the information about the user’s locale? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">System.Web.UI.Page.Culture </span></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"> </span><span style="color: blue;"><br style="line-height: 20px;" /><span style="line-height: 20px;"></span><span style="font-weight: bold; line-height: 20px;">What’s the difference between Codebehind="MyCode.aspx.cs" and Src="MyCode.aspx.cs"?</span></span></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="font-weight: bold; line-height: 20px;"> </span><span style="line-height: 20px;"> CodeBehind is relevant to Visual Studio.NET only. </span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What’s a bubbled event? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">When
you have a complex control, like DataGrid, writing an event processing
routine for each object (cell, button, row, etc.) is quite tedious. The
controls can bubble up their event handlers, allowing the main DataGrid
event handler to take care of its constituents. </span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;"> </span><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Suppose you want a certain ASP.NET function executed on MouseOver over a certain button. Where do you add an event handler? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">It’s
the Attributes property, the Add function inside that property. So
btnSubmit.Attributes.Add("onMouseOver","someClientCode();") </span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What data type does the RangeValidator control support? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">Integer, String and Date.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><span style="color: blue;">Explain the differences between Server-side and Client-side code?</span> </span><br style="line-height: 20px;" /><span style="line-height: 20px;">Server-side code runs on the server. Client-side code runs in the clients’ browser.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><span style="color: blue;">What type of code (server or client) is found in a Code-Behind class?</span> </span><br style="line-height: 20px;" /><span style="line-height: 20px;">Server-side code.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><span style="color: blue;">Should validation (did the user enter a real date) occur server-side or client-side? Why?</span> </span><br style="line-height: 20px;" /><span style="line-height: 20px;">Client-side. This reduces an additional request to the server to validate the users input.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What does the "EnableViewState" property do? Why would I want it on or off? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">It enables the viewstate on the page. It allows the page to save the users input on a form.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What is the difference between Server.Transfer and Response.Redirect? Why would I choose one over the other? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">Server.Transfer is used to post a form to another page. Response.Redirect is used to redirect the user to another page or site.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;"> </span><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Can you explain the difference between an ADO.NET Dataset and an ADO Recordset? </span></span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="line-height: 20px;">• A DataSet can represent an entire relational database in memory, complete with tables, relations, and views. </span><br style="line-height: 20px;" /><span style="line-height: 20px;">• A DataSet is designed to work without any continuing onnection to the original data source. </span><br style="line-height: 20px;" /><span style="line-height: 20px;">• Data in a DataSet is bulk-loaded, rather than being loaded on demand. </span><br style="line-height: 20px;" /><span style="line-height: 20px;">• There's no concept of cursor types in a DataSet. </span><br style="line-height: 20px;" /><span style="line-height: 20px;">• DataSets have no current record pointer You can use For Each loops to move through the data. </span><br style="line-height: 20px;" /><span style="line-height: 20px;">• You can store many edits in a DataSet, and write them to the original data source in a single operation. </span><br style="line-height: 20px;" /><span style="line-height: 20px;">• Though the DataSet is universal, other objects in ADO.NET come in different versions for different data sources. </span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><b><span style="line-height: 20px;">Can you give an example of what might be best suited to place in the Application_Start and Session_Start subroutines? </span></b></span></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"> </span><br style="line-height: 20px;" /><span style="line-height: 20px;">This is where you can set the specific variables for the Application and Session objects.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="line-height: 20px;"> </span></span><span style="font-weight: bold; line-height: 20px;"><span style="color: blue;">If
I’m developing an application that must accommodate multiple security
levels though secure login and my ASP.NET web application is spanned
across three web-servers (using round-robin load balancing) what would
be the best approach to maintain login-in state for the users?</span> </span><br style="line-height: 20px;" /><span style="line-height: 20px;">Maintain the login state security through a database.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Can you explain what inheritance is and an example of when you might use it? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">When
you want to inherit (use the functionality of) another class. Base
Class Employee. A Manager class could be derived from the Employee base
class.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Whats an assembly? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">Assemblies are the building blocks of the .NET framework. Overview of assemblies from MSDN</span><br style="line-height: 20px;" /><span style="color: blue;"><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;">Describe the difference between inline and code behind. </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">Inline
code written along side the html in a page. Code-behind is code written
in a separate file and referenced by the .aspx page.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Explain what a diffgram is, and a good use for one? </span></span><span style="line-height: 20px;">The
DiffGram is one of the two XML formats that you can use to render
DataSet object contents to XML. For reading database data to an XML file
to be sent to a Web Service.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Whats MSIL, and why should my developers need an appreciation of it if at all? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">MSIL is the Microsoft Intermediate Language. All .NET compatible languages will get converted to MSIL.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Which method do you invoke on the DataAdapter control to load your generated dataset with data? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">The .Fill() method</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Can you edit data in the Repeater control? </span></span><span style="line-height: 20px;">No, it just reads the information from its data source</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><span style="color: blue;">Which template must you provide, in order to display data in a Repeater control?</span> </span><br style="line-height: 20px;" /><span style="line-height: 20px;">ItemTemplate</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">How can you provide an alternating color scheme in a Repeater control? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">Use the AlternatingItemTemplate</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What
property must you set, and what method must you call in your code, in
order to bind the data from some data source to the Repeater control? </span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">You must set the DataSource property and call the DataBind method.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What base class do all Web Forms inherit from? </span></span><span style="line-height: 20px;">The Page class.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Name two properties common in every validation control? </span></span><span style="line-height: 20px;">ControlToValidate property and Text property.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What tags do you need to add within the asp:datagrid tags to bind columns manually? </span></span><span style="line-height: 20px;">Set AutoGenerateColumns Property to false on the datagrid tag</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What tag do you use to add a hyperlink column to the DataGrid? </span></span><span style="line-height: 20px;"><asp:HyperLinkColumn></span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What is the transport protocol you use to call a Web service? </span></span><span style="line-height: 20px;">SOAP is the preferred protocol. </span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">True or False: A Web service can only be written in .NET? </span></span><span style="line-height: 20px;">False</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What does WSDL stand for? </span></span><span style="line-height: 20px;">(Web Services Description Language)</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="line-height: 20px;"></span><span style="font-weight: bold; line-height: 20px;">Which property on a Combo Box do you set with a column name, prior to setting the DataSource, to display data in the combo box? </span></span><span style="line-height: 20px;">DataTextField property </span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Which control would you use if you needed to make sure the values in two different controls matched? </span></span><span style="line-height: 20px;">CompareValidator Control</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">True or False: To test a Web service you must create a windows application or Web application to consume this service?</span></span><span style="line-height: 20px;">False, the webservice comes with a test page and it provides HTTP-GET method to test.</span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">How many classes can a single .NET DLL contain?</span><span style="line-height: 20px;"> </span></span><span style="line-height: 20px;">It can contain many classes.</span></span></span></span></div>
<div dir="ltr">
</div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"><span style="background-color: white;"><span style="color: blue;"><span style="font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; font-weight: bold; line-height: 20px;">optimization technique description</span></span><br style="color: #333333; font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; line-height: 20px;" /><span style="font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; line-height: 20px;"> Avoid unnecessary use of view state which lowers the performance.</span><br style="font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; line-height: 20px;" /><span style="font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; line-height: 20px;"> Avoid the round trips to server.</span><br style="font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; line-height: 20px;" /><span style="font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; line-height: 20px;"> Use connection pooling.</span><br style="font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; line-height: 20px;" /><span style="font-family: Lucida Grande,Verdana,Arial,Bitstream Vera Sans,sans-serif; line-height: 20px;"> Use stored procedures.</span></span></span></span></span></span></div>
<div dir="ltr">
</div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"><span style="background-color: white;"><span style="color: #333333; line-height: 20px;"><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What serialization?</span></span><br style="color: #333333; line-height: 20px;" /><span style="color: black;"><span style="line-height: 20px;">Serialization is a process of conversion an objects into stream of bytes so that they can transfer through the channels.</span> </span></span></span> </span></span></span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"> </span></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"></span></span></span></div>
<div dir="ltr">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="line-height: 20px;"></span></span></span></span></div>
<br />
<span dir="ltr" id="sites-page-title"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><b><span style="background-color: white;"><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">26) About a class access specifiers and method access specifiers</span></span></span></b><span style="background-color: white;"><span style="line-height: 20px;"> Public : available throughout application.</span><br style="line-height: 20px;" /><span style="line-height: 20px;"> Private : available for class and its inherited class.</span><br style="line-height: 20px;" /><span style="line-height: 20px;"> Protected : restricted to that class only.</span><br style="line-height: 20px;" /><span style="line-height: 20px;"> Internal : available throughout that assembly.</span> </span></span></span></span><br />
<br />
<span dir="ltr" id="sites-page-title"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What are the different types of caching?</span></span><br style="color: #333333; line-height: 20px;" /><span style="line-height: 20px;">Caching
is a technique widely used in computing to increase performance by
keeping frequently accessed or expensive data in memory. In context of
web application, caching is used to retain the pages or data across HTTP
requests and reuse them without the expense of recreating them.ASP.NET
has 3 kinds of caching strategiesOutput CachingFragment CachingData</span><br style="color: #333333; line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><br />CachingOutput Caching:</span><span style="line-height: 20px;"> Caches
the dynamic output generated by a request. Some times it is useful to
cache the output of a website even for a minute, which will result in a
better performance. For caching the whole page the page should have
OutputCache directive.</span><br style="line-height: 20px;" /><span style="line-height: 20px;"><%@ OutputCache Duration="60" VaryByParam="state" %></span><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><br />Fragment Caching:</span><span style="line-height: 20px;"> Caches
the portion of the page generated by the request. Some times it is not
practical to cache the entire page, in such cases we can cache a portion
of page<%@ OutputCache Duration="120"
VaryByParam="CategoryID;SelectedID"%></span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;">Data Caching:</span><span style="line-height: 20px;"> Caches the objects programmatically. For data caching asp.net provides a cache object for eg: cache["States"] = dsStates;</span> </span></span></span></span><br />
<br />
<span dir="ltr" id="sites-page-title"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">What are different types of directives in .NET?</span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">@Page:
Defines page-specific attributes used by the ASP.NET page parser and
compiler. Can be included only in .aspx files <%@ Page
AspCompat="TRUE" language="C#" %></span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;">@Control:</span><span style="line-height: 20px;">Defines
control-specific attributes used by the ASP.NET page parser and
compiler. Can be included only in .ascx files. <%@ Control
Language="VB" EnableViewState="false" %></span><br style="line-height: 20px;" /><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;">@Import:</span><span style="line-height: 20px;"> Explicitly
imports a namespace into a page or user control. The Import directive
cannot have more than one namespace attribute. To import multiple
namespaces, use multiple @Import directives. <% @ Import
Namespace="System.web" %></span><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><br />@Implements:</span><span style="line-height: 20px;"> Indicates
that the current page or user control implements the specified .NET
framework interface.<%@ Implements
Interface="System.Web.UI.IPostBackEventHandler" %></span><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><br />@Register:</span><span style="line-height: 20px;"> Associates
aliases with namespaces and class names for concise notation in custom
server control syntax.<%@ Register Tagprefix="Acme"
Tagname="AdRotator" Src="AdRotator.ascx" %></span><br style="line-height: 20px;" /><span style="font-weight: bold; line-height: 20px;"><br />@Assembly:</span><span style="line-height: 20px;"> Links
an assembly to the current page during compilation, making all the
assembly's classes and interfaces available for use on the page. <%@
Assembly Name="MyAssembly" %><%@ Assembly Src="MySource.vb" %></span> </span></span></span></span><br />
<br />
<span dir="ltr" id="sites-page-title"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"><span style="color: blue;"><span style="font-weight: bold; line-height: 20px;">Can a user browsing my Web site read my Web.config or Global.asax files?</span></span><br style="line-height: 20px;" /><span style="line-height: 20px;">No.
The section of Machine.config, which holds the master configuration
settings for ASP.NET, contains entries that map ASAX files, CONFIG
files, and selected other file types to an HTTP handler named
HttpForbiddenHandler, which fails attempts to retrieve the associated
file. You can modify it by editing Machine.config or including an
section in a local Web.config file.</span> </span></span></span></span><br />
<br />
<span dir="ltr" id="sites-page-title"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="background-color: white;"> </span><b> </b></span></span></span><br />
<span style="font-size: x-small;"><span style="font-family: Verdana,sans-serif;"><span style="font-size: small;"> </span></span></span></div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com5tag:blogger.com,1999:blog-4700053866498083794.post-21493782881159173182013-11-09T19:45:00.001+05:302014-09-02T21:06:09.750+05:30SSAS Interview Questions and Answers - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is the difference between SSAS 2005 and SSAS2008?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In 2005 its not possible to create an empty cube but in 2008 we can create an empty cube.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A new feature in Analysis Services 2008 is the Attribute
Relationships tab in the Dimension Designer . to implement attribute
relationship is complex in ssas 2005</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">we can create ONLY 2000 partitions per Measure Group in ssas 2005 and the same limit of partitions is removed in ssas 2008.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">You can answer more but if you end this with these then the interviewer feel that you are REAL EXPERIENCED.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is datawarehouse in short DWH?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The datawarehouse is an informational environment that</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Provides an integrated and total view of the enterprise</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Makes the enterprise’s current and historical information easily available for decision making</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Makes decision-support transactions possible without hindering operational systems</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Renders the organization’s information consistent</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Presents a flexible and interactive source of strategic information</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">OR a warehouse is a</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Subject oriented</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Integrated</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Time variant</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Non volatile for doing decision support</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">OR</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Collection of data in support of management’s decision making process”. He defined the terms in the sentence as follows.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">OR</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Subject oriented:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">It define the specific business domain ex: banking, retail, insurance, etc…..</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Integrated:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">It should be in a position to integrated data from various source systems</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Ex: sql,oracle,db2 etc……</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Time variant:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">It should be in a position to maintain the data the various time periods.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Non volatile:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Once data is inserted it can’t be changed</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is data mart?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A data mart is a subset of an organizational data store, usually
oriented to a specific purpose or major data subject that may be
distributed to support business needs. Data marts are analytical data
stores designed to focus on specific business functions for a specific
community within an organization.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Data marts are often derived from subsets of data in a <a href="http://en.wikipedia.org/wiki/Data_warehouse" title="Data warehouse">data warehouse</a>,
though in the bottom-up data warehouse design methodology the data
warehouse is created from the union of organizational data marts.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">They are 3 types of data mart they are</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Dependent</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Independent</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Logical data mart</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What are the difference between data mart and data warehouse?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Datawarehouse is complete data where as Data mart is Subset of the same.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Ex:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">All the organisation data may related to finance department, HR,
banking dept are stored in data warehouse where as in data mart only
finance data or HR department data will be stored. So data warehouse is a
collection of different data marts.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>Have you ever worked on performance tuning, if yes what are the steps involved in it?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">We need to identify the bottlenecks to tune the performance, to overcome the bottleneck we need to following the following.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Avoid named queries</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Unnecessary relationships between tables</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Proper attribute relationships to be given</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Proper aggregation design</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Proper partitioning of data</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Proper dimension usage design</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Avoid unnecessary many to many relationships</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Avoid unnecessary measures</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Set AttributeHierarchyEnabled = FALSE to Attributes that is not required</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Won’t take even single measure which is not necessary.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are the difficulties faced in cube development?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This question is either to test whether you are really experienced or when he doesnot have any questions to ask .. <img alt=";)" class="wp-smiley" src="http://www.msbiguide.com/wp-includes/images/smilies/icon_wink.gif" /></span></span> <br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">You can tell any area where you feel difficult to work. But always the best answers will be the following.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Giving attribute relationships</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Calculations</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Giving dimension usage (many to many relationship)</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Analyzing the requirements</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>Explain the flow of creating a cube?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Steps to create a cube in ssas</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Create a data source.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Create a datasource view.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Create Dimensions</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Create a cube.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Deploy and Process the cube.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is a datasource or DS?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The data source is the Physical Connection information that analysis
service uses to connect to the database that host the data. The data
source contains the connection string which specifies the server and the
database hosting the data as well as any necessary authentication
credentials.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is datasourceview or DSV?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A data source view is a persistent set of tables from a data source
that supply the data for a particular cube. BIDS also includes a wizard
for creating data source views, which you can invoke by right-clicking
on the Data Source Views folder in Solution Explorer.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Datasource view is the logical view of the data in the data source.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Data source view is the only thing a cube can see.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is named calculation?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A named calculation is a SQL expression represented as a calculated
column. This expression appears and behaves as a column in the table. A
named calculation lets you extend the relational schema of existing
tables or views in a data source view without modifying the tables or
views in the underlying data source.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Named calculation is used to create a new column in the DSV using
hard coded values or by using existing columns or even with both.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is named query?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Named query in DSV is similar to View in Database. This is used to
create Virtual table in DSV which will not impact the underlying
database. Named query is mainly used to merge the two or more table in
the datasource view or to filter columns of a table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Why we need named queries?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A named query is used to join multiple tables, to remove unnecessary
columns from a table of a database. You can achieve the same in database
using Views but this Named Queries will be the best bet whe you don’t
have access to create Views in database.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>How will you add a new column to an existing table in data source view?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">By using named calculations we can add a new column to an existing
table in the data source view. Named Calculation is explained above.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is dimension table?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A dimension table contains hierarchical data by which you’d like to
summarize. A dimension table contains specific business information, a
dimension table that contains the specific name of each member of the
dimension. The name of the dimension member is called an “attribute”</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The key attribute in the dimension must contain a unique value for
each member of the dimension. This key attribute is called “primary key
column”</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The primary key column of each dimension table corresponding to the one of the key column in any related fact table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is fact table?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A fact table contains the basic information that you wish to
summarize. The table that stores the detailed value for measure is
called fact table. In simple and best we can define as “The table which
contains METRICS” that are used to analyse the business.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">It consists of 2 sections</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1) Foregine key to the dimesion</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">2) measures/facts(a numerical value that used to monitor business activity)</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What is Factless fact table?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This is very important interview question. The “Factless Fact Table”
is a table which is similar to Fact Table except for having any measure;
I mean that this table just has the links to the dimensions. These
tables enable you to track events; indeed they are for recording events.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Factless fact tables are used for tracking a process or collecting
stats. They are called so because, the fact table does not have
aggregatable numeric values or information. They are mere key values
with reference to the dimensions from which the stats can be collected</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is attribute relationships, why we need it?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Attribute relationships are the way of telling the analysis service
engine that how the attributes are related with each other. It will help
to relate two or more attributes to each other.Processing time will be
decreased if proper relationships are given. This increases the Cube
Processing performance and MDX query performance too.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In Microsoft SQL Server Analysis Services, attributes within a
dimension are always related either directly or indirectly to the key
attribute. When you define a dimension based on a star schema, which is
where all dimension attributes are derived from the same relational
table, an attribute relationship is automatically defined between the
key attribute and each non-key attribute of the dimension. When you
define a dimension based on a snowflake schema, which is where dimension
attributes are derived from multiple related tables, an attribute
relationship is automatically defined as follows:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Between the key attribute and each non-key attribute bound to columns in the main dimension table.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Between the key attribute and the attribute bound to the foreign key
in the secondary table that links the underlying dimension tables.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Between the attribute bound to foreign key in the secondary table
and each non-key attribute bound to columns from the secondary table.</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How many types of attribute relationships are there?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">They are 2 types of attribute relationships they are</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Rigid</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Flexible</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Rigid: </strong>In Rigid relationships where the
relationship between the attributes is fixed, attributes will not change
levels or their respective attribute relationships.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Example: The time dimension. We know that month “January 2009″ will
ONLY belong to Year “2009″ and it wont be moved to any other year.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Flexible : </strong>In Flexible relationship between the attributes is changed.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Example: An employee and department. An employee can be in accounts
department today but it is possible that the employee will be in
Marketing department tomorrow.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>How many types of dimensions are there and what are they?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">They are 3 types of dimensions:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">confirm dimension</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">junk dimension</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">degenerate attribute</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are confirmed dimensions, junk dimension and degenerated dimensions?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Confirm dimension: It is the dimension which is sharable across the
multiple facts or data model. This is also called as Role Playing
Dimensions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">junk dimension: A number of very small dimensions might be lumped (a
small irregularly shaped) together to form a single dimension, a junk
dimension – the attributes are not closely related. Grouping of Random
flags and text Attributes in a dimension and moving them to a separate
sub dimension is known as junk dimension.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Degenerated dimension: In this degenerate dimension contains their
values in fact table and the dimension id not available
in dimension table. Degenerated Dimension is a dimension key without
corresponding dimension.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Example: In the PointOfSale Transaction Fact table, we have:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Date Key (FK), Product Key (FK), Store Key (FK), Promotion Key (FP), and POS Transaction Number</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Date Dimension corresponds to Date Key, Production Dimension
corresponds to Production Key. In a traditional parent-child database,
POS Transactional Number would be the key to the transaction header
record that contains all the info valid for the transaction as a whole,
such as the transaction date and store identifier. But in
this dimensional model, we have already extracted this info into other
dimension. Therefore, POS Transaction Number looks like a dimension key
in the fact table but does not have the corresponding dimension table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are the types of database schema?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">They are 3 types of database schema they are</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Star</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Snowflake</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Starflake</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is star, snowflake and star flake schema?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Star schema:</strong> In star schema fact table will be
directly linked with all dimension tables. The star schema’s dimensions
are denormalized with each dimension being represented by a single
table. In a star schema a central fact table connects a number of
individual dimension tables.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Snowflake: </strong>The snowflake schema is an extension of the <a href="http://www.1keydata.com/datawarehousing/www.1keydata.com/datawarehousing/star-schema.html">star schema</a>,
where each point of the star explodes into more points. In a star
schema, each dimension is represented by a single dimensional table,
whereas in a snowflake schema, that dimensional table is normalized into
multiple lookup tables, each representing a level in the dimensional
hierarchy. In snow flake schema fact table will be linked directly as
well as there will be some intermediate dimension tables between fact
and dimension tables.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Star flake:</strong> A hybrid structure that contains a mixture of star(denormalized) and snowflake(normalized) schema’s.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How will you hide an attribute?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">We can hide the attribute by selecting “AttributeHierarchyVisible = False” in properties of the attribute.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>How will you make an attribute not process?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">By selecting “ AttributeHierarchyEnabled = False”, we can make an attribute not in process.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is use of IsAggregatable property?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In Analysis Service we generally see all dimension has All member.
This is because of IsAggregatable property of the attribute. You can set
its value to false, so that it will not show All member. Its default
member for that attribute. If you hide this member than you will have to
set other attribute value to default member else it will pick some
value as default and this will create confusion in browsing data if
someone is not known to change in default member.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What are key, name and value columns of an attribute?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Key column of any attribute: </strong>Contains the column or
columns that represent the key for the attribute, which is the column in
the underlying relational table in the data source view to which the
attribute is bound. The value of this column for each member is
displayed to users unless a value is specified for the NameColumn
property.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Name column of an attribute:</strong> Identifies the column
that provides the name of the attribute that is displayed to users,
instead of the value in the key column for the attribute. This column is
used when the key column value for an attribute member is cryptic or
not otherwise useful to the user, or when the key column is based on a
composite key. The NameColumn property is not used in parent-child
hierarchies; instead, the NameColumn property for child members is used
as the member names in a parent-child hierarchy.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Value columns of an attribute: </strong>Identifies the column
that provides the value of the attribute. If the NameColumn element of
the attribute is specified, the same DataItem values are used as default
values for the ValueColumn element. If the NameColumn element of the
attribute is not specified and the KeyColumns collection of the
attribute contains a single KeyColumn element representing a key column
with a string data type, the same DataItem values are used as default
values for the ValueColumn element.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is hierarchy, what are its types and difference between them?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A hierarchy is a very important part of any OLAP engine and allows
users to drill down from summary levels hierarchies represent the way
user expect to explore data at more detailed level</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">hierarchies is made up of multipule levels creating the structure based on end user requirements.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">->years->quarter->month->week ,are all the levels of calender hierarchy</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">They are 2 types of hierarchies they are</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Natural hierarchy</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Unnatural hierarchy</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> Natural hierarchy: </strong>This means that the attributes
are intuitively related to one another. There is a clear relationship
from the top of the hierarchy to the bottom.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Example: An example of this would be date: year, quarter and month follow from each other, and in part, define each other.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Unnatural hierarchy: </strong>This means that the attributes are not clearly related.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Example: An example of this might be geography; we may have country
-> state -> city, but it is not clear where Province might sit.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is Attribute hierarchy?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">An attribute hierarchy is created for every attribute in a dimension,
and each hierarchy is available for dimensioning fact data. This
hierarchy consists of an “All” level and a detail level containing all
members of the hierarchy.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">you can organize attributes into user-defined hierarchies to provide
navigation paths in a cube. Under certain circumstances, you may want to
disable or hide some attributes and their hierarchies.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What is use of AttributeHierarchyDisplayFolder property ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>AttributeHierarchyDisplayFolder:</strong> Identifies the
folder in which to display the associated attribute hierarchy to end
users. For example if I set the property value as “Test” to all the
Attributes of a dimension then a folder with the name “Test” will be
created and all the Attributes will be placed into the same.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong><strong>What is use of AttributeHierarchyEnabled?</strong></strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>AttributeHierarchyEnabled: </strong>Determines whether an
attribute hierarchy is generated by Analysis Services for the attribute.
If the attribute hierarchy is not enabled, the attribute cannot be used
in a user-defined hierarchy and the attribute hierarchy cannot be
referenced in Multidimensional Expressions (MDX) statements.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is use of AttributeHierarchyOptimizedState?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>AttributeHierarchyOptimizedState: </strong>Determines the
level of optimization applied to the attribute hierarchy. By default, an
attribute hierarchy is FullyOptimized, which means that Analysis
Services builds indexes for the attribute hierarchy to improve query
performance. The other option, NotOptimized, means that no indexes are
built for the attribute hierarchy. Using NotOptimized is useful if the
attribute hierarchy is used for purposes other than querying, because no
additional indexes are built for the attribute. Other uses for an
attribute hierarchy can be helping to order another attribute.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is use of AttributeHierarchyOrdered ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>AttributeHierarchyOrdered: </strong>Determines whether the
associated attribute hierarchy is ordered. The default value is True.
However, if an attribute hierarchy will not be used for querying, you
can save processing time by changing the value of this property to
False.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What is the use of AttributeHierarchyVisible ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>AttributeHierarchyVisible : </strong>Determines whether the
attribute hierarchy is visible to client applications. The default value
is True. However, if an attribute hierarchy will not be used for
querying, you can save processing time by changing the value of this
property to False.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What are types of storage modes?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">There are three standard storage modes in OLAP applications</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">MOLAP</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">ROLAP</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">HOLAP</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Compare the Three Storage Modes ?</strong></span></span></li>
</ul>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Summary and comparison</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<table border="0" cellpadding="0" cellspacing="0" style="width: 565px;">
<tbody>
<tr>
<td valign="top" width="60"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Basic Storage Mode</span></span></td>
<td valign="top" width="103"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Storage Location for Detail Data</span></span></td>
<td valign="top" width="103"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Storage Location for Summary/ Aggregations</span></span></td>
<td valign="top" width="88"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Storage space requirement</span></span></td>
<td valign="top" width="71"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Query Response Time</span></span></td>
<td valign="top" width="79"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Processing Time</span></span></td>
<td valign="top" width="61"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Latency</span></span></td>
</tr>
<tr>
<td valign="top" width="60"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">MOLAP</span></span></td>
<td valign="top" width="103"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Multidimensional Format</span></span></td>
<td valign="top" width="103"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Multidimensional Format</span></span></td>
<td valign="top" width="88"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">MediumBecause detail data is stored in compressed format.</span></span></td>
<td valign="top" width="71"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Fast</span></span></td>
<td valign="top" width="79"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Fast</span></span></td>
<td valign="top" width="61"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">High</span></span></td>
</tr>
<tr>
<td valign="top" width="60"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">HOLAP</span></span></td>
<td valign="top" width="103"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Relational Database</span></span></td>
<td valign="top" width="103"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Multidimensional Format</span></span></td>
<td valign="top" width="88"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Small</span></span></td>
<td valign="top" width="71"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Medium</span></span></td>
<td valign="top" width="79"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Fast</span></span></td>
<td valign="top" width="61"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Medium</span></span></td>
</tr>
<tr>
<td valign="top" width="60"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">ROLAP</span></span></td>
<td valign="top" width="103"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Relational Database</span></span></td>
<td valign="top" width="103"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Relational Database</span></span></td>
<td valign="top" width="88"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Large</span></span></td>
<td valign="top" width="71"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Slow</span></span></td>
<td valign="top" width="79"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Slow</span></span></td>
<td valign="top" width="61"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Low</span></span></td>
</tr>
</tbody>
</table>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is MOLAP and its advantage?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">MOLAP (Multi dimensional Online Analytical Processing) : MOLAP is the
most used storage type. Its designed to offer maximum query performance
to the users. the data and aggregations are stored in a
multidimensional format, compressed and optimized for performance. This
is both good and bad. When a cube with MOLAP storage is processed, the
data is pulled from the relational database, the aggregations are
performed, and the data is stored in the AS database. The data inside
the cube will refresh only when the cube is processed, so latency is
high.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Advantages:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Since the data is stored on the OLAP server in optimized format, queries (even complex calculations) are faster than ROLAP.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The data is compressed so it takes up less space.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">And because the data is stored on the OLAP server, you don’t need to keep the connection to the relational database.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Cube browsing is fastest using MOLAP.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is ROLAP and its advantage?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">ROLAP (Relational Online Analytical Processing) : ROLAP does not have
the high latency disadvantage of MOLAP. With ROLAP, the data and
aggregations are stored in relational format. This means that there will
be zero latency between the relational source database and the cube.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Disadvantage of this mode is the performance, this type gives the
poorest query performance because no objects benefit from multi
dimensional storage.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Advantages:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Since the data is kept in the relational database instead of on the OLAP server, you can view the data in almost real time.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Also, since the data is kept in the relational database, it allows
for much larger amounts of data, which can mean better scalability.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Low latency.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is HOLAP and its advantage?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Hybrid Online Analytical Processing (HOLAP): HOLAP is a combination
of MOLAP and ROLAP. HOLAP stores the detail data in the relational
database but stores the aggregations in multidimensional format. Because
of this, the aggregations will need to be processed when changes are
occur. With HOLAP you kind of have medium query performance: not as slow
as ROLAP, but not as fast as MOLAP. If, however, you were only querying
aggregated data or using a cached query, query performance would be
similar to MOLAP. But when you need to get that detail data, performance
is closer to ROLAP.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Advantages:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">HOLAP is best used when large amounts of aggregations are queried
often with little detail data, offering high performance and lower
storage requirements.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Cubes are smaller than MOLAP since the detail data is kept in the relational database.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Processing time is less than MOLAP since only aggregations are stored in multidimensional format.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Low latency since processing takes place when changes occur and detail data is kept in the relational database.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are Translations and its use?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Translation:</strong> The translation feature in analysis
service allows you to display caption and attributes names that
correspond to a specific language. It helps in providing GLOBALIZATION
to the Cube.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Database dimension?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">All the dimensions that are created using NEW DIMENSION Wizard are
database dimensions. In other words, the dimensions which are at
Database level are called Database Dimensions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">What is Cube dimension?</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A cube dimension is an instance of a database dimension within a cube
is called as cube dimension. A database dimension can be used in
multiple cubes, and multiple cube dimensions can be based on a single
database dimension</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Difference between Database dimension and Cube dimension?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The Database dimension has only Name and ID properties, whereas a Cube dimension has several more properties.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Database dimension is created one where as Cube dimension is referenced from database dimension.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Database dimension exists only once.where as Cube dimensions can be created more than one using ROLE PLAYING Dimensions concept.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>How will you add a dimension to cube?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">To add a dimension to a cube follow these steps.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> In Solution Explorer, right-click the cube, and then click View Designer.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> In the Design tab for the cube, click the Dimension Usage tab.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> Either click the Add Cube Dimension button, or right-click anywhere on the work surface and then click Add Cube Dimension.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> In the Add Cube Dimension dialog box, use one of the following steps:</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">To add an existing dimension, select the dimension, and then click OK.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">To create a new dimension to add to the cube, click New dimension, and then follow the steps in the Dimension Wizard.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is SCD (slowly changing dimension)?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Slowly changing dimensions (SCD) determine how the historical changes
in the dimension tables are handled. Implementing the SCD mechanism
enables users to know to which category an item belonged to in any given
date.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are types of SCD?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">It is a concept of STORING Historical Changes and when ever an IT guy
finds a new way to store then a new Type will come into picture.
Basically there are 3 types of SCD they are given below</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">SCD type1</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">SCD type2</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">SCD type3</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Type1, Type2, Type3 of SCD?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Type 1: </strong>In Type 1 Slowly Changing Dimension, the new
information simply overwrites the original information. In other words,
no history is kept.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In our example, recall we originally have the following table:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<table border="1" cellpadding="0">
<tbody>
<tr>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Customer Key</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Name</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">State</span></span></td>
</tr>
<tr>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1001</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Christina</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Illinois</span></span></td>
</tr>
</tbody>
</table>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">After Christina moved from Illinois to California, the new information replaces the new record, and we have the following table:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<table border="1" cellpadding="0">
<tbody>
<tr>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Customer Key</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Name</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">State</span></span></td>
</tr>
<tr>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1001</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Christina</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">California</span></span></td>
</tr>
</tbody>
</table>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Advantages: This is the easiest way to handle the Slowly Changing
Dimension problem, since there is no need to keep track of the old
information.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Disadvantages: All history is lost. By applying this methodology, it is not possible to trace back in history.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Usage: About 50% of the time.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">When to use Type 1: Type 1 slowly changing dimension should be used
when it is not necessary for the data warehouse to keep track of
historical changes.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> Type 2: </strong>In Type 2 Slowly Changing Dimension, a new
record is added to the table to represent the new information.
Therefore, both the original and the new record will be present. The new
record gets its own primary key.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In our example, recall we originally have the following table:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<table border="1" cellpadding="0">
<tbody>
<tr>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Customer Key</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Name</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">State</span></span></td>
</tr>
<tr>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1001</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Christina</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Illinois</span></span></td>
</tr>
</tbody>
</table>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">After Christina moved from Illinois to California, we add the new information as a new row into the table:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<table border="1" cellpadding="0">
<tbody>
<tr>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Customer Key</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Name</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">State</span></span></td>
</tr>
<tr>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1001</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Christina</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Illinois</span></span></td>
</tr>
<tr>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1005</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Christina</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">California</span></span></td>
</tr>
</tbody>
</table>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Advantages: This allows us to accurately keep all historical information.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Disadvantages:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This will cause the size of the table to grow fast. In cases where
the number of rows for the table is very high to start with, storage and
performance can become a concern.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This necessarily complicates the ETL process.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Usage: About 50% of the time.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Type3 : </strong>In Type 3 Slowly Changing Dimension, there
will be two columns to indicate the particular attribute of interest,
one indicating the original value, and one indicating the current value.
There will also be a column that indicates when the current value
becomes active.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In our example, recall we originally have the following table:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<table border="1" cellpadding="0">
<tbody>
<tr>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Customer Key</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Name</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">State</span></span></td>
</tr>
<tr>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1001</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Christina</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Illinois</span></span></td>
</tr>
</tbody>
</table>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">To accommodate Type 3 Slowly Changing Dimension, we will now have the following columns:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Customer Key,Name,OriginalState,CurrentState,Effective Date</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">After Christina moved from Illinois to California, the original
information gets updated, and we have the following table (assuming the
effective date of change is January 15, 2003):</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<table border="1" cellpadding="0">
<tbody>
<tr>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Customer Key</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Name</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">OriginalState</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">CurrentState</span></span></td>
<td width="120"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Effective Date</span></span></td>
</tr>
<tr>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1001</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Christina</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Illinois</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">California</span></span></td>
<td><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">15-JAN-2003</span></span></td>
</tr>
</tbody>
</table>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Advantages:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This does not increase the size of the table, since new information is updated.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This allows us to keep some part of history.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Disadvantages: Type 3 will not be able to keep all history where an
attribute is changed more than once. For example, if Christina later
moves to Texas on December 15, 2003, the California information will be
lost.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Usage: Type 3 is rarely used in actual practice.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is role playing dimension with two examples?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Role play dimensions: </strong>We already discussed about
this. This is nothing but CONFIRMED Dimensions. A dimension can play
different role in a fact table you can recognize a roleplay dimension
when there are multiple columns in a fact table that each have foreign
keys to the same dimension table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Ex1: There are three dimension keys in the
factinternalsales,factresellersales tables which all refer to the
dimtime table,the same time dimension is used to track sales by that
contain either of these fact table,the corresponding role-playing
dimension are automatically added to the cube.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Ex2 : In retail banking, for checking account cube we could have
transaction date dimension and effective date dimension. Both dimensions
have date, month, quarter and year attributes. The formats of
attributes are the same on both dimensions, for example the date
attribute is in ‘dd-mm-yyyy’ format. Both dimensions have members from
1993 to 2010.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is measure group, measure?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Measure groups : </strong>These measure groups can contain
different dimensions and be at different granularity but so long as you
model your cube correctly, your users will be able to use measures from
each of these measure groups in their queries easily and without
worrying about the underlying complexity.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Creating multiple measure groups : To create a new measure group in
the Cube Editor, go to the Cube Structure tab and right-click on the
cube name in the Measures pane and select ‘New Measure Group’. You’ll
then need to select the fact table to create the measure group from and
then the new measure group will be created; any columns that aren’t used
as foreign key columns in the DSV will automatically be created as
measures, and you’ll also get an extra measure of aggregation type
Count. It’s a good idea to delete any measures you are not going to use
at this stage.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> Measures :</strong> Measures are the numeric values that
our users want to aggregate, slice, dice and otherwise analyze, and as a
result, it’s important to make sure they behave the way we want them
to. One of the fundamental reasons for using Analysis Services is that,
unlike a relational database it allows us to build into our cube design
business rules about measures: how they should be formatted, how they
should aggregate up, how they interact with specific dimensions and so
on.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is attribute?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">An attribute is a specification that defines a property of an object,
element, or file. It may also refer to or set the specific value for a
given instance of such.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is surrogate key?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A surrogate key is the SQL generated key which acts like an alternate
primary key for the table in database, Data warehouses commonly use a
surrogate key to uniquely identify an entity. A surrogate is not
generated by the user but by the system. A primary difference between a
primary key and surrogate key in few databases is that primarykey
uniquely identifies a record while a Surrogatekey uniquely identifies an
entity.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Ex: An employee may be recruited before the year 2000 while another
employee with the same name may be recruited after the year 2000. Here,
the primary key will uniquely identify the record while the surrogate
key will be generated by the system (say a serial number) since the SK
is NOT derived from the data.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How many types of relations are there between dimension and measure group?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">They are six relation between the dimension and measure group, they are</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">No Relationship</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Regular</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Refernce</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Many to Many</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Data Mining</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Fact</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is regular type, no relation type, fact type, referenced type, many-to-many type with example?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>No relationship:</strong> The dimension and measure group are not related.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Regular:</strong> The dimension table is joined directly to the fact table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Referenced:</strong> The dimension table is joined to an intermediate table, which in turn,is joined to the fact table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Many to many:</strong>The dimension table is to an
intermediate fact table,the intermediate fact table is joined , in turn,
to an intermediate dimension table to which the fact table is joined.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Data mining:</strong>The target dimension is based on a
mining model built from the source dimension. The source dimension must
also be included in the cube.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Fact table: </strong>The dimension table is the fact table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What are calculated members and what is its use?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Calculations are item in the cube that are eveluated at runtime</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Calculated members: You can create customized measures or dimension
members, called calculated members, by combining cube data, arithmetic
operators, numbers, and/or functions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Example: You can create a calculated member called Marks that
converts dollars to marks by multiplying an existing dollar measure by a
conversion rate. Marks can then be displayed to end users in a separate
row or column. Calculated member definitions are stored, but their
values exist only in memory. In the preceding example, values in marks
are displayed to end users but are not stored as cube data.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What are KPIs and what is its use?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In Analysis Services, a KPI is a collection of calculations that are
associated with a measure group in a cube that are used to evaluate
business success. We use KPI to see the business at the particular
point, this is represents with some graphical items such as traffic
signals,ganze etc</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are actions, how many types of actions are there, explain with example?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Actions are powerful way of extending the value of SSAS cubes for the
end user. They can click on a cube or portion of a cube to start an
application with the selected item as a parameter, or to retrieve
information about the selected item.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">One of the objects supported by a SQL Server Analysis Services cube
is the action. An action is an event that a user can initiate when
accessing cube data. The event can take a number of forms. For example, a
user might be able to view a Reporting Services report, open a Web
page, or drill through to detailed information related to the cube data</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Analysis Services supports three types of actions..</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Report action: </strong>Report action Returns a Reporting Services report that is associated with the cube data on which the action is based.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Drill through: </strong>Drillthrough Returns a result set that provides detailed information related to the cube data on which the action is based.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Standard: </strong>Standard has five action subtypes that are based on the specified cube data.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Dataset:</strong> Returns a mutlidimensional dataset.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Proprietary:</strong> Returns a string that can be interpreted by a client application.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Rowset:</strong> Returns a tabular rowset.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Statement:</strong> Returns a command string that can be run by a client application.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>URL:</strong> Returns a URL that can be opened by a client application, usually a browser.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is partition, how will you implement it?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">You can use the Partition Wizard to define partitions for a measure
group in a cube. By default, a single partition is defined for each
measure group in a cube. Access and processing performance, however, can
degrade for large partitions. By creating multiple partitions, each
containing a portion of the data for a measure group, you can improve
the access and processing performance for that measure group.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is the minimum and maximum number of partitions required for a measure group?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In 2005 a MAX of 2000 partitions can be created per measure group and that limit is lifted in later versions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In any version the MINIMUM is ONE Partition per measure group.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What are Aggregations and its use?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Aggregations provide performance improvements by allowing Microsoft
SQL Server Analysis Services (SSAS) to retrieve pre-calculated totals
directly from cube storage instead of having to recalculate data from an
underlying data source for each query. To design these aggregations,
you can use the Aggregation Design Wizard. This wizard guides you
through the following steps:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Selecting standard or custom settings for the storage and caching options of a partition, measure group, or cube.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Providing estimated or actual counts for objects referenced by the partition, measure group, or cube.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Specifying aggregation options and limits to optimize the storage and query performance delivered by designed aggregations.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Saving and optionally processing the partition, measure group, or cube to generate the defined aggregations.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">After you use the Aggregation Design Wizard, you can use the
Usage-Based Optimization Wizard to design aggregations based on the
usage patterns of the business users and client applications that query
the cube.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is perspective, have you ever created perspective?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Perspectives are a way to reduce the complexity of cubes by hidden
elements like measure groups, measures, dimensions, hierarchies
etc. It’s nothing but slicing of a cube, for ex we are having retail and
hospital data and end user is subscribed to see only hospital data,
then we can create perspective according to it.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is deploy, process and build?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Bulid:</strong> Verifies the project files and create several local files.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Deploy: </strong>Deploy the structure of the cube(Skeleton) to the server.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Process:</strong> Read the data from the source and build the dimesions and cube structures</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Elaborating the same is given below.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Build: </strong>Its is a used to process the data of the cube database. Build is a version of a <a href="http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci212834,00.html">program</a>.
As a rule, a build is a pre-release version and as such is identified
by a build number, rather than by a release number. Reiterative
(repeated) builds are an important part of the development process.
Throughout development, application components are collected and
repeatedly <a href="http://whatis.techtarget.com/definition/0,,sid9_gci211824,00.html">compiled</a> for testing purposes, to ensure a reliable final product. Build tools, such as <a href="http://whatis.techtarget.com/definition/0,,sid9_gci873189,00.html">make</a> or <a href="http://searchenterpriselinux.techtarget.com/sDefinition/0,,sid39_gci873167,00.html">Ant</a>, enable developers to automate some programming tasks. As a verb, to build can mean either to write <a href="http://whatis.techtarget.com/definition/0,,sid9_gci213934,00.html">code</a> or to put individual coded components of a program together.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Deployment: </strong>During development of an Analysis
Services project in Business Intelligence Development Studio, you
frequently deploy the project to a development server in order to create
the Analysis Services database defined by the project. This is required
to test the project.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">for example, to browse cells in the cube, browse dimension members, or verify key performance indicators (KPIs) formulas.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What is the maximum size of a dimension?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The maximum size of the dimension is <strong>4 gb</strong>.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> <strong>What are the types of processing and explain each?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">They are 6 types of processing in ssas ,they are</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Process Full</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Process Data</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Process Index</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Process Incremental</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Process Structure</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">UnProcess</span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> Process Full: </strong>Processes an Analysis Services object
and all the objects that it contains. When Process Full is executed
against an object that has already been processed, Analysis Services
drops all data in the object, and then processes the object. This kind
of processing is required when a structural change has been made to an
object, for example, when an attribute hierarchy is added, deleted, or
renamed. This processing option is supported for cubes, databases,
dimensions, measure groups, mining models, mining structures, and
partitions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Process Data: </strong>Processes data only without building
aggregations or indexes. If there is data is in the partitions, it will
be dropped before re-populating the partition with source data. This
processing option is supported for dimensions, cubes, measure groups,
and partitions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Process Index: </strong>Creates or rebuilds indexes and
aggregations for all processed partitions. This option causes an error
on unprocessed objects. This processing option is supported for cubes,
dimensions, measure groups, and partitions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Process Increment: A</strong>dds newly available fact data
and process only to the relevant partitions. This processing option is
supported for measure groups, and partitions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Process Structure: </strong>If the cube is unprocessed,
Analysis Services will process, if it is necessary, all the cube’s
dimensions. After that, Analysis Services will create only cube
definitions. If this option is applied to a mining structure, it
populates the mining structure with source data. The difference between
this option and the Process Full option is that this option does not
iterate the processing down to the mining models themselves. This
processing option is supported for cubes and mining structures.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Unprocess : </strong>Drops the data in the object specified
and any lower-level constituent objects. After the data is dropped, it
is not reloaded. This processing option is supported for cubes,
databases, dimensions, measure groups, mining models, mining structures,
and partitions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Process Default: </strong>Detects the process state of an
object, and performs processing necessary to deliver unprocessed or
partially processed objects to a fully processed state. This processing
option is supported for cubes, databases, dimensions, measure groups,
mining models, mining structures, and partitions.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is a cube?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The basic unit of storage and analysis in Analysis Services is the <em>cube</em>. A cube is a collection of data that’s been aggregated to allow queries to return data quickly.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">For example, a cube of order data might be aggregated by time period
and by title, making the cube fast when you ask questions concerning
orders by week or orders by title.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is AMO?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The full form of AMO is Analysis Managament Objects. This is used to create or alter cubes from .NET code.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>After creating the cube, if we added a new column to the OLTP table then how you add this new attribute to the cube?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Just open the datasourceview and on right click we find the option
REFRESH. Click the REFRESH then it will add new attributes to the table
which can be added to Cube.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="text-decoration: underline;"><strong>REAL TIME INTERVIEW QUESTIONS - </strong></span></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What is the size of the Cube in your last Project?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Answer to this question varies from project to project and mainly
depends on how BIG is your database and how COMPLEX the database design
is. Generally for the database with a TRANSACTION TABLE of 50 crore
records, the cube size will be around 100GB. So, better go with 100GB as
answer to this question.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is size of the database in your last Project?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">You can expect this question immediately after you answer 100GB to
the last question. The database size will be 600 to 800GB for which the
cube will come to 100 GB. So go with 800GB for this question.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is size of the fact(Transaction) table in your last Project?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This will be the next question if you answer 800GB as your
dataabase size. Here he is not expecting SIZE in GBs but the interviewer
will be expecting NUMBER OF ROWS in the Transaction table. Go with
57Crore records for this question.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How frequently you process the cube?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">You have to be very careful here. Frequency of processing cube
depends on HOW FREQUENTLY YOU ARE GETTING NEW DATA. Once the new data
comes then SSIS team loads it and send a mail to SSAS team after load is
completed successfully. Once SSAS team receives the mail then these
guys will look for best time to PROCESS.</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Typically we get data either Weekly or Monthly. So you can say that
the processing of the cube will be done either Weekly or monthly.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How frequently you get DATA from clients?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This answer should be based on your last answer. IF you answered
WEEKLY to last question then the Answer to this question also should be
WEEKLY. IF MONTHLY for last question then this answer also should be
MONTHLY.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What type of Processing Options you used to process the cube in your Project?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This is the toughest question to answer. This depends on DATA you have and CLIENTS requirements. Let me explain here.</span></span></div>
<div>
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">If the database is SMALL, let’s say it has only 1 crore records then people do FULL PROCESS as it wont take much time.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">If the database is MEDIUM, let’s say it has only 15 crore records
then people prefer to do INCREMENTAL PROCESS unless CLIENTS ask us to do
FULL PROCESS as it takes little bit of time.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">If the database is HUGE, let’s say it has more than 35 to 40 crore
records then people prefer to do INCREMENTAL PROCESS unless CLIENTS ask
us to do FULL PROCESS as it takes lot of time. In this case we TRY to
convince clients for INCREMENTAL and if they don’t agree then we don’t
have any other option.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Incremental process will come into picture ONLY when there is no
updates to the OLD data i.e no changes to already existing data else NO
OTHER OPTION than FULL PROCESS.</span></span></li>
</ol>
</div>
<div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How you provide security to cube?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><b>By defining roles we provide security to cubes. Using roles we
can restrict users from accessing restricted data. Procedure as follows
- </b></span></span></div>
<div>
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Define Role</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Set Permission</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Add appropriate Users to the role</span></span></li>
</ol>
</div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How you move the cube from one server to another?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">There are many ways to do the same. Let me explain four here and
cleverly you can say “I worked on 4 SSAS projects till date and
implemented different types in all the four.”</span></span></div>
<div>
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Backup and restore – This is the simplest way. Take the Backup from
development server and copy the backup to FTP folder of clients. After
doing this drop a mail to Client’s Admin and he will take care of
RESTORE part.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Directly PROCESS the cube in PRODUCTION environment. For this you
need access to Production which will not be given by clients unless the
clients are *********. One of the client I worked for given FULL access
to me .. <img alt=";)" class="wp-smiley" src="http://www.msbiguide.com/wp-includes/images/smilies/icon_wink.gif" /></span></span> </li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Under Srart –> All Programs –> Sql Server –> Analysis
Services you can see deployment wizard. This is one way of moving the
cube. This method has some steps to follow. First deploy your cube and
FOUR files will be created in BIN folder of PROJECT folder. Copy those
FOUR files and paste in Production server in any directory. Then OPEN
this DEPLOYMENT Wizard in production and when it ask for Database file
then point to the location where you copied the files. After that
NEXT,NEXT,NEXT … OK .. Cube will be deployed and processed.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This way is most beautiful one. Synchronization, In this we will
first deploy and process the cube in STAGING ENVIRONMENT and then we
will go to production server. Connect to Analysis services in SSMS and
select Synchronize by right clicking on Databases folder in SSMS of
analysis services. Then select source as STAGING SERVER and then click
on OK. The changes in the cube present in the Staging server will be
copied to the production server.</span></span></li>
</ol>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="line-height: 13px;"><strong>What is the toughest challenge you face in your Project?</strong><br />
</span></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="line-height: 13px;">There are couple of this where we face difficulty.</span></span></span></div>
<div>
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">While working on RELATIONSHIPS between Measure Groups and Dimensions.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Working on Complex calculations</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Performance tuning</span></span></li>
</ol>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="line-height: 13px;"><strong>How you created Partitions of the cube in your Last Project?</strong><br />
</span></span></span></li>
</ul>
</div>
</div>
</div>
</div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Partitions can be created on different data. Few people do it on
PRODUCT NAME wise and many prefer to do it on DATE data wise. you go
with DATE wise.</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In dates, we can create MONTH wise,WEEK wise,QUARTER wise and some
times YEAR wise. This all depends on how much data you are coming per
WEEK or MONTH or QUARTER … If you are getting 50 lakhs records per month
then tell you do MONTH wise.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How many dimensions in your last cube?</strong></span></span></li>
</ul>
</div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">47 to 50.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How many measure groups in your last cube?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Total 10 and in that 4 are Fact tables and remaining 6 are Fact less fact tables.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is the Schema of your last cube?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Snowflake</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Why not STAR Schema ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">My data base design doesn’t support STAR Schema.</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are the different relationships that you are used in your cube?</strong></span></span></li>
</ul>
<div>
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Regular</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Referenced</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Many to Many</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Fact</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">No Relationship</span></span></li>
</ol>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="line-height: 13px;"><strong>Have you created the KPI’s , If then Explain?</strong><br />
</span></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="line-height: 13px;">Don’t add much to this as the
questions in this will be tricky. Just tell that you worked on couple of
KPI and you have basic knowledge on this. (Don’t worry, this is not
MANDATORY)</span></span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How you define Aggregations in your Project?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">We defined the aggregations for MOST FREQUENTLY USED data in SSRS reports.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Size of SSAS team in your last Project?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Just 2 guys as we guys are really in demand and lot of scarcity:)</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How many Resources worked on same Cube in your Project?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Only 2 and one in morning shift and another in Evening shift.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How much time it take to Process the Cube?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This is Very very important question. This again depends on the
SIZE of database,Complexity of the database and your server settings.
For database with 50 cr transaction records, it generally takes 3.5 hrs.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How many Calculation you done in Your Project?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">I answer more than 5000 and if you tell the same then you are
caught unless you are super good in MDX. Best answer for you is “Worked
on 50 calculations”.</span></span></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com0tag:blogger.com,1999:blog-4700053866498083794.post-70337760702258359642013-11-09T19:42:00.004+05:302014-09-02T21:06:47.809+05:30SSIS Interview Questions and Answers - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What do we mean by dataflow in SSIS?</strong><br />
Data flow is nothing but the flow of data from the corresponding sources
to the referred destinations. In this process, the data transformations
make changes to the data to make it ready for the data warehouse.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is a breakpoint in SSIS? How is it setup? How do you disable it?</strong><br />
A breakpoint is a stopping point in the code. The breakpoint can give the Developer\DBA an<br />
opportunity to review the status of the data, variables and the overall status of the SSIS package.<br />
10 unique conditions exist for each breakpoint.<br />
Breakpoints are setup in BIDS. In BIDS, navigate to the control flow interface. Right click on the<br />
object where you want to set the breakpoint and select the ‘Edit Breakpoints…’ option.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Can you name 5 or more of the native SSIS connection managers?</strong></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1) OLEDB connection – Used to connect to any data source requiring an OLEDB connection (i.e.,<br />
SQL Server 2000)<br />
2) Flat file connection – Used to make a connection to a single file in
the File System. Required for reading information from a File System
flat file<br />
3) ADO.Net connection – Uses the .Net Provider to make a connection to SQL Server 2005 or other<br />
connection exposed through managed code (like C#) in a custom task<br />
4) Analysis Services connection – Used to make a connection to an
Analysis Services database or project. Required for the Analysis
Services DDL Task and Analysis Services Processing Task<br />
5) File connection – Used to reference a file or folder. The options are to either use or create a file or folder<br />
6) Excel</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is the use of Bulk Insert Task in SSIS?</strong><br />
Bulk Insert Task is used to upload large amount of data from flat files
into Sql Server. It supports only OLE DB connections for destination
database.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is Conditional Split transformation in SSIS?</strong><br />
This is just like IF condition which checks for the given condition and
based on the condition evaluation, the output will be sent to the
appropriate OUTPUT path. It has ONE input and MANY outputs. Conditional
Split transformation is used to send paths to different outputs based on
some conditions. For example, we can organize the transform for the
students in a class who have marks greater than 40 to one path and the
students who score less than 40 to another path.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• How do you eliminate quotes from being uploaded from a flat file to SQL Server? </strong><br />
This can be done using TEXT QUALIFIER property. In the SSIS package on
the Flat File Connection Manager Editor, enter quotes into the Text
qualifier field then preview the data to ensure the quotes are not
included.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Can you explain how to setup a checkpoint file in SSIS?</strong><br />
The following items need to be configured on the properties tab for SSIS package:</span></span>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>CheckpointFileName</strong> – Specify the full path to the
Checkpoint file that the package uses to save the value of package
variables and log completed tasks. Rather than using a hard-coded path
as shown above, it’s a good idea to use an expression that concatenates a
path defined in a package variable and the package name.</span></span>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>CheckpointUsage</strong> – Determines if/how checkpoints are
used. Choose from these options: Never(default), IfExists, or Always.
Never indicates that you are not using Checkpoints. IfExists is the
typical setting and implements the restart at the point of failure
behavior. If a Checkpoint file is found it is used to restore package
variable values and restart at the point of failure. If a Checkpoint
file is not found the package starts execution with the first task. The
Always choice raises an error if the Checkpoint file does not exist.</span></span>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>SaveCheckpoints</strong> – Choose from these options: True or False (default). You must select True to implement the Checkpoint behavior.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What are the different values you can set for CheckpointUsage property ?</strong><br />
There are three values, which describe how a checkpoint file is used during package execution:<br />
1) <strong>Never</strong>: The package will not use a checkpoint file and therefore will never restart.<br />
2) <strong>If Exists</strong>: If a checkpoint file exists in the place
you specified for the CheckpointFilename property, then it will be used,
and the package will restart according to the checkpoints written.<br />
3) <strong>Always</strong>: The package will always use a checkpoint file to restart, and if one does not exist, the package will fail.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is the ONLY Property you need to set on TASKS in order to configure CHECKPOINTS to RESTART package from failure?</strong><br />
The one property you have to set on the task is <strong>FailPackageOnFailure</strong>.
This must be set for each task or container that you want to be the
point for a checkpoint and restart. If you do not set this property to
true and the task fails, no file will be written, and the next time you
invoke the package, it will start from the beginning again.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Where can we set the CHECKPOINTS, in DataFlow or ControlFlow ?</strong><br />
Checkpoints only happen at the Control Flow; it is not possible to
checkpoint transformations or restart inside a Data Flow. The Data Flow
Task can be a checkpoint, but it is treated as any other task.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Can you explain different options for dynamic configurations in SSIS?</strong><br />
1) XML file<br />
2) custom variables<br />
3) Database per environment with the variables<br />
4) Use a centralized database with all variables</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is the use of Percentage Sampling transformation in SSIS?</strong><br />
Percentage Sampling transformation is generally used for data mining.
This transformation builds a random sample of set of output rows by
choosing specified percentage of input rows. For example if the input
has 1000 rows and if I specify 10 as percentage sample then the
transformation returns 10% of the RANDOM records from the input data.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is the use of Term Extraction transformation in SSIS?</strong><br />
Term Extraction transformation is used to extract nouns or noun phrases
or both noun and noun phrases only from English text. It extracts terms
from text in a transformation input column and then writes the terms to a
transformation output column. It can be also used to find out the
content of a dataset.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is Data Viewer and what are the different types of Data Viewers in SSIS?</strong><br />
A Data Viewer allows viewing data at a point of time at runtime. If data
viewer is placed before and after the Aggregate transform, we can see
data flowing to the transformation at the runtime and how it looks like
after the transformation occurred. The different types of data viewers
are:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1. Grid<br />
2. Histogram<br />
3. Scatter Plot<br />
4. Column Chart.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is Ignore Failure option in SSIS?</strong><br />
In Ignore Failure option, the error will be ignored and the data row
will be directed to continue on the next transformation. Let’s say you
have some JUNK data(wrong type of data or JUNK data) flowing from
source, then using this option in SSIS we can REDIRECT the junk data
records to another transformation instead of FAILING the package. This
helps to MOVE only valid data to destination and JUNK can be captured
into separate file.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Which are the different types of Control Flow components in SSIS?</strong><br />
The different types of Control Flow components are: Data Flow Tasks, SQL
Server Tasks, Data Preparation Tasks, Work flow Tasks, Scripting Tasks,
Analysis Services Tasks, Maintenance Tasks, Containers.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What are containers? What are the different types of containers in SSIS?</strong><br />
Containers are objects that provide structures to packages and extra
functionality to tasks. There are four types of containers in SSIS, they
are: Foreach Loop Container, For Loop Container, Sequence Container and
Task Host Container.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What are the different types of Data flow components in SSIS?</strong><br />
There are 3 data flow components in SSIS.<br />
1. Sources<br />
2. Transformations<br />
3. Destinations</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What are the different types of data sources available in SSIS?</strong><br />
There are 7 types of data sources provided by SSIS: a.) Data Reader
source b.) Excel source c.) Flat file source d.) OLEDB source e.) Raw
file source f.) XML source g.) Script component</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is SSIS Designer?</strong><br />
It is a graphical tool for creating packages. It has 4 tabs: Control Flow, Data Flow, Event Handlers and Package Explorer.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is Control Flow tab?</strong><br />
It is the tab in SSIS designer where various Tasks can be arranged and
configured. This is the tab where we provide and control the program
flow of the project.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is Data Flow tab?</strong><br />
This is the tab where we do all the work related to ETL job. It is the
tab in SSIS Designer where we can extract data from sources, transform
the data and then load them into destinations.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is the function of control flow tab in SSIS?</strong><br />
On the control flow tab, the tasks including dataflow task, containers
and precedence constraints that connect containers and tasks can be
arranged and configured.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is the function of Event handlers tab in SSIS?</strong><br />
On the Event handlers tab, workflows can be configured to respond to package events.<br />
For example, we can configure Work Flow when ANY task Failes or Stops or Starts ..</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is the function of Package explorer tab in SSIS?</strong><br />
This tab provides an explorer view of the package. You can see what is
happening in the package. The Package is a container at the top of the
hierarchy.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is Solution Explorer?</strong><br />
It is a place in SSIS Designer where all the projects, Data Sources,
Data Source Views and other miscellaneous files can be viewed and
accessed for modification.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• How do we convert data type in SSIS?</strong><br />
The Data Conversion Transformation in SSIS converts the data type of an input column to a different data type.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• How are variables useful in ssis package?</strong><br />
Variables can provide communication among objects in the package.
Variables can provide communication between parent and child packages.
Variables can also be used in expressions and scripts. This helps in
providing dynamic values to tasks.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Aggregate Transformation in SSIS?</strong><br />
It aggregates data, similar you do in applying TSQL functions like Group
By, Min, Max, Avg, and Count. For example you get total quantity and
Total line item for each product in Aggregate Transformation Editor.
First you determine input columns, then output column name in Output
Alias table in datagrid, and also operations for each Output Alias in
Operation columns of the same datagrid. Some of operation functions
listed below :<br />
• Group By<br />
• Average<br />
• Count<br />
• Count Distinct : count distinct and non null column value<br />
• Min, Max, Sum<br />
In Advanced tab, you can do some optimization here, such as setting up
Key Scale option (low, medium, high), Count Distinct scale option (low,
medium, high), Auto Extend factor and Warn On Division By Zero. If you
check Warn On Division By Zero, the component will give warning instead
of error. Key Scale option will optimize transformation cache to certain
number of key threshold. If you set it low, optimization will target to
500,000 keys written to cache, medium can handle up to 5 million keys,
and high can handle up to 25 million keys, or you can specify particular
number of keys here. Default value is unspecified. Similar to number of
keys for Count Distinct scale option. It is used to optimize number of
distinct value written to memory, default value is unspecified. Auto
Extend Factor is used when you want some portion of memory is used for
this component. Default value is 25% of memory.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Audit Transformation ?</strong><br />
It allows you to add auditing information as required in auditing world
specified by HIPPA and Sarbanes-Oxley (SOX). Auditing options that you
can add to transformed data through this transformation are :<br />
1. Execution of Instance GUID : ID of execution instance of the package<br />
2. PackageID : ID of the package<br />
3. PackageName<br />
4. VersionID : GUID version of the package<br />
5. Execution StartTime<br />
6. MachineName<br />
7. UserName<br />
8. TaskName<br />
9. TaskID : uniqueidentifier type of the data flow task that contains audit transformation.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Character Map Transformation?</strong><br />
It transforms some character. It gives options whether output result
will override the existing column or add to new column. If you define it
as new column, specify new column name. Operations available here are:<br />
1. Uppercase<br />
2. Lowercase<br />
3. Byte reversal : such as from 0×1234 to 0×4321<br />
4. Full width<br />
5. Half width<br />
6. Hiragana/katakana/traditional Chinese/simplified Chinese<br />
7. Linguistic casing</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Conditional split Transformation ?</strong><br />
It functions as if…then…else construct. It enables send input data to a
satisfied conditional branch. For example you want to split product
quantity between less than 500 and greater or equal to 500. You can give
the conditional a name that easily identifies its purpose. Else section
will be covered in Default Output Column name.<br />
After you configure the component, it connect to subsequent
transformation/destination, when connected, it pops up dialog box to let
you choose which conditional options will apply to the destination
transformation/destination.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Copy column Transformation?</strong><br />
This component simply copies a column to another new column. Just like ALIAS Column in T-Sql.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Data conversion Transformation?</strong><br />
This component does conversion data type, similar to TSQL function CAST
or CONVERT. If you wish to convery the data from one type to another
then this is the best bet. But please make sure that you have COMPATABLE
data in the column.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Data Mining query Transformation?</strong><br />
This component does prediction on the data or fills gap on it. Some good scenarios uses this component is:<br />
1. Take some input columns as number of children, domestic income, and
marital income to predict whether someone owns a house or not.<br />
2. Take prediction what a customer would buy based analysis buying pattern on their shopping cart.<br />
3. Filling blank data or default values when customer doesn’t fill some items in the questionnaire.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Derived column Transformation?</strong><br />
Derived column creates new column or put manipulation of several columns
into new column. You can directly copy existing or create a new column
using more than one column also.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Merge Transformation?</strong><br />
Merge transformation merges two paths into single path. It is useful
when you want to break out data into path that handles errors after the
errors are handled, the data are merge back into downstream or you want
to merge 2 data sources. It is similar with Union All transformation,
but Merge has some restrictions :<br />
1. Data should be in sorted order<br />
2. Data type , data length and other meta data attribute must be similar before merged.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Merge Join Transformation?</strong><br />
Merge Join transformation will merge output from 2 inputs and doing
INNER or OUTER join on the data. But if you the data come from 1 OLEDB
data source, it is better you join through SQL query rather than using
Merge Join transformation. Merge Join is intended to join 2 different
data source.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Multicast Transformation?</strong><br />
This transformation sends output to multiple output paths with no
conditional as Conditional Split does. Takes ONE Input and makes the
COPY of data and passes the same data through many outputs. In simple
Give one input and take many outputs of the same data.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Percentage and row sampling Transformations?</strong><br />
This transformation will take data from source and randomly sampling
data. It gives you 2 outputs. First is selected data and second one is
unselected data. It is used in situation where you train data mining
model. These two are used to take the SAMPLE of data from the input
data.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Sort Transformation?</strong><br />
This component will sort data, similar in TSQL command ORDER BY. Some transformations need sorted data.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Explain Union all Transformation?</strong><br />
It works in opposite way to Merge transformation. It can take output
from more than 2 input paths and combines into single output path.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What r the possible locations to save SSIS package?</strong><br />
You can save a package wherever you want.<br />
SQL Server<br />
Package Store<br />
File System</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is a package?</strong><br />
A discrete executable unit of work composed of a collection of control
flow and other objects, including data sources, transformations, process
sequence, and rules, errors and event handling, and data destinations.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is a workflow in SSIS?</strong><br />
A workflow is a set of instructions on how to execute tasks.<br />
(It is a set of instructions on how to execute tasks such as sessions,
emails and shell commands. a workflow is created form work flow mgr.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is the diff between control flow Items and data flow Items?</strong><br />
The control flow is the highest level control process. It allows you to
manage the run-time process activities of data flow and other processes
within a package.<br />
When we want to extract, transform and load data within a package. You add an SSIS dataflow task to the package control flow.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What are the main component of SSIS(project-architecture)?</strong><br />
SSIS archItecture has 4 main components<br />
1.ssis service<br />
2.ssis runtime engine & runtime executables<br />
3.ssis dataflow engine & dataflow components<br />
4.ssis clients</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• Different components in SSIS package?</strong><br />
Control flow<br />
Data flow<br />
Event handler<br />
Package explorer</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What are Connection Managers?</strong><br />
It is a bridge b/w package object and physical data. It provides logical
representation of a connection at design time the properties of the
connection mgr describes the physical connection that integration
services creates when the package is run.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is environment variable in SSIS?</strong><br />
An environment variable configuration sets a package property equal to the value in an environment variable.<br />
Environmental configurations are useful for configuring properties that
are dependent on the computer that is executing the package.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• How to provide securIty to packages?</strong><br />
We can provide security in two ways<br />
1. Package encryption<br />
2. Password protection.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What are Precedence constraints?</strong><br />
Constraints that link executable, container, and tasks wIthin the
package control flow and specify condItion that determine the sequence
and condItions for determine whether executable run.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>• What is Design time Deployment in SSIS ?</strong></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">When<strong> </strong>you run a package from with in BIDS,it is built
and temporarily deployed to the folder. By default the package will be
deployed to the BIN folder in the Package’s Project folder and you can
configure for custom folder for deployment. When the Package’s execution
is completed and stopped in BIDS,the deployed package will be deleted
and this is called as Design Time Deployment.</span></span></div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com0tag:blogger.com,1999:blog-4700053866498083794.post-63677001806382268902013-11-09T19:38:00.000+05:302014-09-02T21:07:09.401+05:30Sql Server Interview Questions with Answers - DotNet Brother<div dir="ltr" style="text-align: left;" trbidi="on">
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What are Constraints or Define Constraints ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Generally we use Data Types to limit the kind of Data in a Column.
For example, if we declare any column with data type INT then ONLY
Integer data can be inserted into the column. Constraint will help us to
limit the Values we are passing into a column or a table. In simple
Constraints are nothing but Rules or Conditions applied on columns or
tables to restrict the data.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong><strong>Different types of Constraints ?</strong></strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">There are THREE Types of Constraints.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Domain</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Entity</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Referential</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Domain has the following constraints types -</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Not Null</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Check</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Entity has the following constraint types -</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Primary Key</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Unique Key</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Referential has the following constraint types -</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Foreign Key</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><span style="line-height: 13px;"><strong>What is the difference between Primary Key and Unique Key ?</strong></span></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Both the Primary Key(PK) and Unique Key(UK) are meant to provide
Uniqueness to the Column on which they are defined. PFB the major
differences between these two.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">By default PK defines Clustered Index in the column where as UK defines Non Clustered Index.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">PK doesn’t allow NULL Value where as UK allow ONLY ONE NULL.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">You can have only one PK per table where as UK can be more than one per table.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">PK can be used in Foreign Key relationships where as UK cannot be used.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong><span style="line-height: 13px;">What is the difference between Delete and Truncate ?</span></strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Both Delete and Truncate commands are meant to remove rows from a
table. There are many differences between these two and pfb the same.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Truncate is Faster where as Delete is Slow process.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Truncate doesn’t log where as Delete logs an entry for every record deleted in Transaction Log.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">We can rollback the Deleted data where as Truncated data cannot be rolled back.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Truncate resets the Identity column where as Delete doesn’t.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">We can have WHERE Clause for delete where as for Truncate we cannot have WHERE Clause.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Delete Activates TRIGGER where as TRUNCATE Cannot.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Truncate is a DDL statement where as Delete is DML statement.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong><span style="line-height: 13px;">What are Indexes or Indices ?</span></strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">An Index in SQL is similar to the Index in a book. Index of a
book makes the reader to go to the desired page or topic easily and
Index in SQL helps in retrieving the data faster from database. An Index
is a seperate physical data structure that enables queries to pull the
data fast. Indexes or Indices are used to improve the performance of a
query.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Types of Indices in SQL ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">There are TWO types of Indices in SQL server.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Clustered</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Non Clustered</span></span></li>
</ol>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong><span style="line-height: 13px;">How many Clustered and Non Clustered Indexes can be defined for a table ?</span></strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Clustered – 1<br />
Non Clustered – 999</span></span></div>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">MSDN reference – <a href="http://msdn.microsoft.com/en-us/library/ms143432.aspx" target="_blank">Click Here</a></span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Transaction in SQL Server ? </strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Transaction groups a set of T-Sql Statements into a single
execution unit. Each transaction begins with a specific task and ends
when all the tasks in the group successfully complete. If any of the
tasks fails, the transaction fails. Therefore, atransaction has only two
results: success or failure. Incomplete steps result in the failure of
the transaction.by programmers to group together read and write
operations. In Simple Either FULL or NULL i.e either all the statements
executes successfully or all the execution will be rolled back.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Types of Transactions ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">There are TWO forms of Transactions.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Implicit – Specifies any Single Insert,Update or Delete statement as Transaction Unit. No need to specify Explicitly.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Explicit – A group of T-Sql statements with the beginning and ending
marked with Begin Transaction,Commit and RollBack. PFB an Example for
Explicit transactions.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">BEGIN TRANSACTION</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Update Employee Set Emp_ID = 54321 where Emp_ID = 12345</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">If(@@Error <>0)</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">ROLLBACK</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Update LEave_Details Set Emp_ID = 54321 where Emp_ID = 12345</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">If(@@Error <>0)</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">ROLLBACK</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">COMMIT</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In the above example we are trying to update an EMPLOYEE ID from
12345 to 54321 in both the master table “Employee” and Transaction table
“Leave_Details”. In this case either BOTH the tables will be updated
with new EMPID or NONE.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is the Max size and Max number of columns for a row in a table ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Size – 8060 Bytes</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Columns – 1024</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Normalization and Explain different normal forms.</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Database normalization is a process of data design and organization
which applies to data structures based on rules that help building
relational databases.<br />
1. Organizing data to minimize redundancy.<br />
2. Isolate data so that additions, deletions, and modifications of a
field can be made in just one table and then propagated through the rest
of the database via the defined relationships.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1NF: Eliminate Repeating Groups</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Each set of related attributes should be in separate table, and give
each table a primary key. Each field contains at most one value from its
attribute domain.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">2NF: Eliminate Redundant Data</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1. Table must be in 1NF.<br />
2. All fields are dependent on the whole of the primary key, or a
relation is in 2NF if it is in 1NF and every non-key attribute is fully
dependent on each candidate key of the relation. If an attribute depends
on only part of a multi‐valued key, remove it to a separate table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">3NF: Eliminate Columns Not Dependent On Key</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1. The table must be in 2NF.<br />
2. Transitive dependencies must be eliminated. All attributes must rely
only on the primary key. If attributes do not contribute to a
description of the key, remove them to a separate table. All attributes
must be directly dependent on the primary key.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">BCNF: Boyce‐Codd Normal Form<br />
for every one of its non-trivial functional dependencies X → Y, X is a
superkey—that is, X is either a candidate key or a superset thereof. If
there are non‐trivial dependencies between candidate key attributes,
separate them out into distinct tables.<br />
4NF: Isolate Independent Multiple Relationships<br />
No table may contain two or more 1:n or n:m relationships that are not directly related.<br />
For example, if you can have two phone numbers values and two email
address values, then you should not have them in the same table.<br />
5NF: Isolate Semantically Related Multiple Relationships<br />
A 4NF table is said to be in the 5NF if and only if every join
dependency in it is implied by the candidate keys. There may be
practical constrains on information that justify separating logically
related many‐to‐many relationships.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Denormalization ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">For optimizing the performance of a database by adding redundant data or by grouping data is called de-normalization.<br />
It is sometimes necessary because current DBMSs implement the relational model poorly.<br />
In some cases, de-normalization helps cover up the inefficiencies
inherent in relational database software. A relational normalized
database imposes a heavy access load over physical storage of data even
if it is well tuned for high performance.<br />
A true relational DBMS would allow for a fully normalized database at
the logical level, while providing physical storage of data that is
tuned for high performance. De‐normalization is a technique to move from
higher to lower normal forms of database modeling in order to speed up
database access.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Query to Pull ONLY duplicate records from table ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">There are many ways of doing the same and let me explain one here. We
can acheive this by using the keywords GROUP and HAVING. The following
query will extract duplicate records from a specific column of a
particular table.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Select specificColumn<br />
FROM particluarTable<br />
GROUP BY specificColumn<br />
HAVING COUNT(*) > 1</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This will list all the records that are repeated in the column specified by “specificColumn” of a “particlarTable”.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Types of Joins in SQL SERVER ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">There are 3 types of joins in Sql server.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Inner Join</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Outer Join</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Cross Join</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Outer join again classified into 3 types.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Right Outer Join</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Left Outer Join</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Full Outer Join.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Table Expressions in Sql Server ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Table Expressions are subqueries that are used where a TABLE is Expected. There are TWO types of table Expressions.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Derived tables</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Common Table Expressions.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Derived Table ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Derived tables are table expression which appears in FROM Clause of a Query. PFB an example of the same.</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">select * from (Select Month(date) as Month,Year(Date) as Year from table1) AS Table2</span></span></div>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">In the above query the subquery in FROM Clause “(Select Month(date)
as Month,Year(Date) as Year from table1) ” is called Derived Table.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is CTE or Common Table Expression ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Common table expression (CTE) is a temporary named result set that you can reference within a</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">SELECT, INSERT, UPDATE, or DELETE statement. You can also use a CTE
in a CREATE VIEW statement, as part of the view’s SELECT query. In
addition, as of SQL Server 2008, you can add a CTE to the new MERGE
statement. There are TWO types of CTEs in Sql Server -</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Recursive</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Non Recursive</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Difference between SmallDateTime and DateTime datatypes in Sql server ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Both the data types are meant to specify date and time but these two has slight differences and pfb the same.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">DateTime occupies 4 Bytes of data where as SmallDateTime occupies only 2 Bytes.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">DateTime ranges from 01/01/1753 to 12/31/9999 where as SmallDateTime ranges from 01/01/1900 to 06/06/2079.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong><span style="line-height: 13px;">What is SQL_VARIANT Datatype ? </span></strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The SQL_VARIANT data type can be used to store values of various data
types at the same time, such as numeric values, strings, and date
values. (The only types of values that cannot be stored are TIMESTAMP
values.) Each value of an SQL_VARIANT column has two parts: the data
value and the information that describes the value. (This information
contains all properties of the actual data type of the value, such as
length, scale, and precision.)</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Temporary table ? </strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A temporary table is a database object that is temporarily stored and
managed by the database system. There are two types of Temp tables.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Local</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Global</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are the differences between Local Temp table and Global Temp table ? </strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Before going to the differences, let’s see the similarities.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Both are stored in tempdb database.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Both will be cleared once the connection,which is used to create the table, is closed.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Both are meant to store data temporarily.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">PFB the differences between these two.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Local temp table is prefixed with # where as Global temp table with ##.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Local temp table is valid for the current connection i.e the
connection where it is created where as Global temp table is valid for
all the connection.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> Local temp table cannot be shared between multiple users where as Global temp table can be shared.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Whar are the differences between Temp table and Table variable ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This is very routine question in interviews. Let’s see the major differences between these two.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Table variables are Transaction neutral where as Temp tables are
Transaction bound. For example if we declare and load data into a temp
table and table variable in a transaction and if the transaction is
ROLLEDBACK, still the table variable will have the data loaded where as
Temp table will not be available as the transaction is rolled back.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Temporary Tables are real tables so you can do things like CREATE
INDEXes, etc. If you have large amounts of data for which accessing by
index will be faster then temporary tables are a good option.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Table variables don’t participate in transactions, logging or
locking. This means they’re faster as they don’t require the overhead.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">You can create a temp table using SELECT INTO, which can be quicker
to write (good for ad-hoc querying) and may allow you to deal with
changing datatypes over time, since you don’t need to define your temp
table structure upfront.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is the difference between Char,Varchar and nVarchar datatypes ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>char[(n)]</strong> - Fixed-length non-Unicode character data
with length of n bytes. n must be a value from 1 through 8,000. Storage
size is n bytes. The SQL-92 synonym for char is character.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>varchar[(n)] </strong>- Variable-length non-Unicode character
data with length of n bytes. n must be a value from 1 through 8,000.
Storage size is the actual length in bytes of the data entered, not n
bytes. The data entered can be 0 characters in length. The SQL-92
synonyms for varchar are char varying or character varying.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>nvarchar(n) </strong>- Variable-length Unicode character data
of n characters. n must be a value from 1 through 4,000. Storage size,
in bytes, is two times the number of characters entered. The data
entered can be 0 characters in length. The SQL-92 synonyms for nvarchar
are national char varying and national character varying.</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is the difference between STUFF and REPLACE functions in Sql server ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The Stuff function is used to replace characters in a string. This
function can be used to delete a certain length of the string and
replace it with a new string.</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Syntax – STUFF (string_expression, start, length, replacement_characters)</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Ex - SELECT STUFF(‘I am a bad boy’,8,3,’good’)</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Output – “I am a good boy”</span></span></div>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">REPLACE function replaces all occurrences of the second given
string expression in the first string expression with a third
expression.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Syntax - REPLACE (String, StringToReplace, StringTobeReplaced)</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Ex – REPLACE(“Roopesh”,”pe”,”ep”)</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Output – “Rooepsh” – You can see PE is replaced with EP in the output.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What are Magic Tables ? </strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Sometimes we need to know about the data which is being
inserted/deleted by triggers in database. Whenever a trigger fires in
response to the INSERT, DELETE, or UPDATE statement, two special tables
are created. These are the <span style="color: red;">inserted <span style="color: black;">and </span><span style="color: black;">the </span>deleted tables</span>. They are also referred to as the <strong>magic tables</strong>. These are the conceptual tables and are similar in structure to the table on which trigger is defined (the trigger table).</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The <strong>inserted table</strong> contains a copy of all records that are inserted in the trigger table.<br />
The <strong>deleted table</strong> contains all records that have been deleted from deleted from the trigger table.<br />
Whenever any updation takes place, the trigger uses both the inserted and deleted tables.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Explain about RANK,ROW_NUMBER and DENSE_RANK in Sql server ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Found a very interesting explanation for the same in the url <a href="http://mangalpardeshi.blogspot.in/2008/10/difference-between-rownumber-rank-and.html" target="_blank"><strong>Click Here</strong></a> . PFB the content of the same here.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Lets take 1 simple example to understand the difference between 3.<br />
First lets create some sample data :</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">– create table<br />
CREATE TABLE Salaries<br />
(<br />
Names VARCHAR(1),<br />
SalarY INT<br />
)<br />
GO<br />
– insert data<br />
INSERT INTO Salaries SELECT<br />
‘A’,5000 UNION ALL SELECT<br />
‘B’,5000 UNION ALL SELECT<br />
‘C’,3000 UNION ALL SELECT<br />
‘D’,4000 UNION ALL SELECT<br />
‘E’,6000 UNION ALL SELECT<br />
‘F’,10000<br />
GO<br />
– Test the data<br />
SELECT Names, Salary<br />
FROM Salaries</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Now lets query the table to get the salaries of all employees with their salary in descending order.<br />
For that I’ll write a query like this :<br />
SELECT names<br />
, salary<br />
,row_number () OVER (ORDER BY salary DESC) as ROW_NUMBER<br />
,rank () OVER (ORDER BY salary DESC) as RANK<br />
,dense_rank () OVER (ORDER BY salary DESC) as DENSE_RANK<br />
FROM salaries</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">>>Output</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<table bgcolor="#ffffff" border="1" style="width: 412px;">
<tbody>
<tr bgcolor="#c6c3b5">
<td width="56"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">NAMES</span></span></td>
<td width="63"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">SALARY</span></span></td>
<td align="center" width="105"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">ROW_NUMBER</span></span></td>
<td align="center" width="80"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">RANK</span></span></td>
<td align="center" width="106"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">DENSE_RANK</span></span></td>
</tr>
<tr>
<td width="56"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">F</span></span></td>
<td width="63"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">10000</span></span></td>
<td align="center" width="105"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1</span></span></td>
<td align="center" width="80"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1</span></span></td>
<td align="center" width="106"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1</span></span></td>
</tr>
<tr>
<td width="56"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">E</span></span></td>
<td width="63"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">6000</span></span></td>
<td align="center" width="105"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">2</span></span></td>
<td align="center" width="80"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">2</span></span></td>
<td align="center" width="106"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">2</span></span></td>
</tr>
<tr>
<td width="56"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A</span></span></td>
<td width="63"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">5000</span></span></td>
<td align="center" width="105"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>3</strong></span></span></td>
<td align="center" width="80"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>3</strong></span></span></td>
<td align="center" width="106"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>3</strong></span></span></td>
</tr>
<tr>
<td width="56"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">B</span></span></td>
<td width="63"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">5000</span></span></td>
<td align="center" width="105"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>4</strong></span></span></td>
<td align="center" width="80"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>3</strong></span></span></td>
<td align="center" width="106"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>3</strong></span></span></td>
</tr>
<tr>
<td width="56"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">D</span></span></td>
<td width="63"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">4000</span></span></td>
<td align="center" width="105"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">5</span></span></td>
<td align="center" bgcolor="#bc8f8f" width="80"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>5</strong></span></span></td>
<td align="center" bgcolor="#bc8f8f" width="106"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>4</strong></span></span></td>
</tr>
<tr>
<td width="56"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">C</span></span></td>
<td width="63"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">3000</span></span></td>
<td align="center" width="105"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">6</span></span></td>
<td align="center" width="80"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">6</span></span></td>
<td align="center" width="106"><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">5</span></span></td>
</tr>
</tbody>
</table>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Interesting Names in the result are employee A, B and D. Row_number
assign different number to them. Rank and Dense_rank both assign same
rank to A and B. But interesting thing is what RANK and DENSE_RANK
assign to next row? Rank assign 5 to the next row, while dense_rank
assign 4.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The numbers returned by the
DENSE_RANK function do not have gaps and always have consecutive ranks.
The RANK function does not always return consecutive integers. The
ORDER BY clause determines the sequence in which the rows are assigned
their unique ROW_NUMBER within a specified partition.<br />
So question is which one to use?<br />
Its all depends on your requirement and business rule you are following.<br />
1. Row_number to be used only when you just want to have serial number
on result set. It is not as intelligent as RANK and DENSE_RANK.<br />
2. Choice between RANK and DENSE_RANK depends on business rule you are
following. Rank leaves the gaps between number when it sees common
values in 2 or more rows. DENSE_RANK don’t leave any gaps between ranks.<br />
So while assigning the next rank to the row RANK will consider the total
count of rows before that row and DESNE_RANK will just give next rank
according to the value.<br />
So If you are selecting employee’s rank according to their salaries you
should be using DENSE_RANK and if you are ranking students according to
there marks you should be using RANK(Though it is not mandatory, depends
on your requirement.)</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What are the differences between WHERE and HAVING clauses in SQl Server ? </strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">PFB the major differences between WHERE and HAVING Clauses ..</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">1.<strong>Where</strong> Clause can be used other than Select statement also where as <strong>Having</strong> is used only with the SELECT statement.<br />
2.<strong>Where</strong> applies to each and single row and <strong>Having</strong> applies to summarized rows (summarized with GROUP BY).<br />
3.In <strong>Where</strong> clause the data that fetched from memory according to condition and In <strong>having</strong> the completed data firstly fetched and then separated according to condition.<br />
4.<strong>Where</strong> is used before GROUP BY clause and <strong>HAVING</strong> clause is used to impose condition on GROUP Function and is used after GROUP BY clause in the query.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Explain Physical Data Model or PDM ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Physical data model represents how the model will be built in the
database. A physical database model shows all table structures,
including column name, column data type, column constraints, primary
key, foreign key, and relationships between tables. Features of a
physical data model include:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Specification all tables and columns.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Foreign keys are used to identify relationships between tables.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Specying Data types.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">EG -</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><img alt="" src="http://epf.eclipse.org/wikis/openupsp/openup_basic/guidances/guidelines/resources/PDMSample.JPG" height="309" id="il_fi" width="597" /></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Reference from <a href="http://www.1keydata.com/datawarehousing/logical-data-model.html" target="_blank"><strong>Here</strong></a></strong></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> Explain Logical Data Model ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A logical data model describes the data in as much detail as
possible, without regard to how they will be physical implemented in the
database. Features of a logical data model include:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Includes all entities and relationships among them.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">All attributes for each entity are specified.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The primary key for each entity is specified.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Foreign keys (keys identifying the relationship between different entities) are specified.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Normalization occurs at this level.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><img alt="" src="http://www.1keydata.com/datawarehousing/logical-data-model.jpg" height="400" id="il_fi" width="400" /></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Reference from <a href="http://www.1keydata.com/datawarehousing/logical-data-model.html" target="_blank"><strong>Here</strong></a></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Explain Conceptual Data Model ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A conceptual data model identifies the highest-level relationships
between the different entities. Features of conceptual data model
include:</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Includes the important entities and the relationships among them.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">No attribute is specified.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">No primary key is specified.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><img alt="" src="http://www.1keydata.com/datawarehousing/conceptual-data-model.jpg" height="260" id="il_fi" width="300" /></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Reference from <a href="http://www.1keydata.com/datawarehousing/logical-data-model.html" target="_blank"><strong>Here</strong></a></span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Log Shipping ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Log Shipping is a basic level SQL Server high-availability technology
that is part of SQL Server. It is an automated backup/restore process
that allows you to create another copy of your database for failover.</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Log shipping involves copying a database backup and subsequent
transaction log backups from the primary (source) server and restoring
the database and transaction log backups on one or more secondary (Stand
By / Destination) servers. The Target Database is in a standby or
no-recovery mode on the secondary server(s) which allows subsequent
transaction logs to be backed up on the primary and shipped (or copied)
to the secondary servers and then applied (restored) there.</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What are the advantages of database normalization ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Benefits of normalizing the database are</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">No need to restructure existing tables for new data.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Reducing repetitive entries.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Reducing required storage space</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Increased speed and flexibility of queries.</span></span></li>
</ol>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What are Linked Servers ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"> Linked servers are configured to enable the Database Engine to
execute a Transact-SQL statement that includes tables in another
instance of SQL Server, or another database product such as Oracle. Many
types OLE DB data sources can be configured as linked servers,
including Microsoft Access and Excel. Linked servers offer the following
advantages:</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The ability to access data from outside of SQL Server.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The ability to issue distributed queries, updates, commands, and
transactions on heterogeneous data sources across the enterprise.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">The ability to address diverse data sources similarly.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Can connect to MOLAP databases too.</span></span></li>
</ol>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What is the Difference between the functions COUNT and COUNT_BIG ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Both Count and Count_Big functions are used to count the number of rows in a table and the only difference is what it returns.</span></span></div>
</div>
<div>
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Count returns INT datatype value where as Count_Big returns BIGINT datatype value.</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Count is used if the rows in a table are less where as Count_Big
will be used when the numbenr of records are in millions or above.</span></span></li>
</ol>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Syntax -</span></span><br />
<ol>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Count – Select count(*) from tablename</span></span></li>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Count_Big – Select Count_Big(*) from tablename</span></span></li>
</ol>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> How to insert values EXPLICITLY to an Identity Column ? </strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">This has become a common question these days in interviews.
Actually we cannot Pass values to Identity column and you will get the
following error message when you try to pass value.</span></span></div>
<pre><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Msg 544, Level 16, State 1, Line 3
Cannot insert explicit value for identity column in table 'tablename' when IDENTITY_INSERT is set to OFF.</span></span></pre>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">To pass an external value we can use the property IDENTITY_INSERT. PFB the sysntax of the same.</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">SET IDENTITY_INSERT <tablename> ON;</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Write your Insert statement here by passing external values to the IDENTITY column.</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Once the data is inserted then remember to SET the property to OFF.</span></span></div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How to RENAME a table and column in SQL ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">We can rename a table or a column in SQL using the System stored procedure SP_RENAME. PFB the sample queries.</span></span></div>
</div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Table - </strong>EXEC sp_rename @objname = department, @newname = subdivision</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Column - </strong>EXEC sp_rename @objname = ‘sales.order_no’ , @newname = ordernumber</span></span></div>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How to rename a database ?</strong></span></span></li>
</ul>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">To rename a database please use the below syntax.</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<pre><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">USE master;
GO
ALTER DATABASE databasename
Modify Name = newname ;
GO</span></span></pre>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What is the use the UPDATE_STATISTICS command ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">UPDATE_STATISTICS updates the indexes on the tables when there is
large processing of data. If we do a large amount of deletions any
modification or Bulk Copy into the tables, we need to basically update
the indexes to take these changes into account.</span></span></div>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>How to read the last record from a table with Identity Column ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">We can get the same using couple of ways and PFB the same.</span></span></div>
</div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>First - </strong></span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">SELECT *<br />
FROM TABLE<br />
WHERE ID = IDENT_CURRENT(‘TABLE’)</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Second - </strong></span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">SELECT *<br />
FROM TABLE<br />
WHERE ID = (SELECT MAX(ID) FROM TABLE)</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>Third - </strong></span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span><br />
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">select top 1 * from TABLE_NAME order by ID desc</span></span></div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">
</span></span>
<br />
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Worktable ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A <i>worktable</i> is a temporary table used internally by SQL Server
to process the intermediate results of a query. Worktables are created
in the tempdb database and are dropped automatically after
query execution. Thease table cannot be seen as these are created while a
query executing and dropped immediately after the execution of the
query.</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is HEAP table ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A table with NO CLUSTERED INDEXES is called as HEAP table. The data
rows of a heap table are not stored in any particular order or linked to
the adjacent pages in the table. This unorganized structure of the heap
table usually increases the overhead of accessing a large heap table,
when compared to accessing a large nonheap table (a table with clustered
index). So, prefer not to go with HEAP tables .. <img alt=":)" class="wp-smiley" src="http://www.msbiguide.com/wp-includes/images/smilies/icon_smile.gif" /></span></span> <br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is ROW LOCATOR ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">If you define a NON CLUSTERED index on a table then the index row of a
nonclustered index contains a pointer to the corresponding data row of
the table. This pointer is called a <i>row locator</i>. The value of the
row locator depends on whether the data pages are stored in a heap or
are clustered. For a nonclustered index, the row locator is a pointer to
the data row. For a table with a clustered index, the row locator is
the clustered index key value.</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What is Covering Index ?</strong></span></span></li>
</ul>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A <i>covering index</i> is a nonclustered index built upon all the
columns required to satisfy a SQL query without going to the base table.
If a query encounters an index and does not need to refer to the
underlying data table at all, then the index can be considered a
covering index. For Example</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Select col1,col2 from table<br />
where col3 = Value<br />
group by col4<br />
order by col5</span></span><br />
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">Now if you create a clustered index for all the columns used in
Select statement then the SQL doesn’t need to go to base tables as
everything required are available in index pages.</span></span><br />
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong> What is Indexed View ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A database view in SQL Server is like a virtual table that represents the output of a SELECT statement. A view is created using the CREATE VIEW statement, and it can be queried exactly like a table. In general, a view doesn’t store any data—only the SELECT
statement associated with it. Every time a view is queried, it further
queries the underlying tables by executing its associated SELECT statement.</span></span></div>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">A database view can be materialized on the disk by creating a
unique clustered index on the view. Such a view is referred to as an <i>indexed view</i>.
After a unique clustered index is created on the view, the view’s
result set is materialized immediately and persisted in physical storage
in the database, saving the overhead of performing costly operations
during query execution. After the view is materialized, multiple
nonclustered indexes can be created on the indexed view.</span></span></div>
<div>
<ul>
<li><span style="font-size: small;"><span style="font-family: Verdana,sans-serif;"><strong>What is Bookmark Lookup ?</strong></span></span></li>
</ul>
<div>
<span style="font-size: small;"><span style="font-family: Verdana,sans-serif;">When a SQL query requests a small number of rows, the optimizer can
use the nonclustered index, if available, on the column(s) in the WHERE
clause to retrieve the data. If the query refers to columns that are not
part of the nonclustered index used to retrieve the data, then
navigation is required from the index row to the corresponding data row
in the table to access these columns.This operation is called a bookmark
lookup.</span></span></div>
</div>
</div>
</div>
Pankaj Tiwarihttp://www.blogger.com/profile/01953469114545944131noreply@blogger.com3