Posts

Cursor Basics

When I started doing T-SQL, I remember Cursors being demonized and is said to be Evil by most of my colleagues, this made me shun away from using or even trying to understand how it works. Finally, in one of the interviews  I was asked how would you retrieve hundred or maybe thousand records and iterate on each while validating each row and doing insert if a row is valid?  My quick answer was to simply create a Table variable containing all the columns needed, plus an indexer column, do a INSERT INTO SELECT statement and also use  the Row_Number() Over syntax. After inserting all the records to the Table variable I now iterate on each row by doing a while loop and declaring an counter and making increments as it goes to the loop, and using the incremented value as where clause in the select statement. This is how the code would look like.. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 DECLARE @TempTable Ta...

SQL JOIN's revisited.

Yesterday I was asked what's the difference between UNION and UNION ALL , it made me think, I've been writing Stored Procedures for SQL Server for quite some time now. But almost always forget what what the difference between the two. It's time to reinforce it by writing it down through this blog. UNION  is used to combine result-sets of two or more SELECT statements,  the difference is really simple in UNION it only joins distinct values, meaning if there are duplicates it wont show it from the result-set, that's where ALL keyword is used when you want to include the duplicates in return. Union Syntax: SELECT ProductId FROM Products UNION SELECT  ProductId FROM Orders This will return unique  ProductId from Products and Orders Table combined and will ignore duplicates. Up Next differences between INNER JOIN, OUTER JOIN , LEFT and RIGHT JOIN and let's not forget CROSS JOIN CROSS JOIN Using cross join multiplies your rows from the first table to t...

Commonly Used Design Patterns

Why use design Patterns? Every software problem is most likely the same in concept, there are some differences in domain but basically problem is the same and therefore solutions already exists and can be re-used this is what design patterns are for. What are the advantages of using Design Patterns? Predictability Reduce Cost Scalability Reusability  Robust code. Superior Software. Design Patterns are categorized into the following: Creational Structural Behavioral

Common Table Expressions (CTE), doing wonders.

What is Common Type Expressions? and How do we use it in our Stored Procedures? Common Type Expressions is almost similar to a view but you don't really create a physical view, instead you are querying a result set that is available for your SELECT, UPDATE, DELETE statements. Here's an example using Northwind: We may have a query like this: SELECT CustomerID,         CompanyName,         CONVERT(varchar,OrderDate,101) as OrderDate,         ProductName,         Quantity FROM (  SELECT  c.CustomerID, c.CompanyName,  o.OrderDate,                p.ProductName,  od.Quantity FROM Orders o INNER JOIN dbo.Customers c ON o.CustomerID = c.CustomerID INNER JOIN dbo.[Order Details] od ON o.OrderID =  od.OrderID INNER JOIN dbo.Products p ON od.ProductID = p.ProductID ) details WHERE details.Quantity>10 With...

Dashboard on Asp.Net MVC.

Back to Blogging. I have this project in ASP.Net MVC wherein I need to make a dashboard for our client using ASP.Net MVC. Quick Requirements: -A predefined dashboard for each user group. -Customizable widget/gatgets/webparts whatever you want to call it. Quick Goals: -Create a webpart and webzones. -Create a baseclasses with interfaces. -Create a controller base which other controllers will inherit from. -Webparts are independent.

Happy New Year!

It's been awhile since I last opened this blog.. Haven't started anything on this blog last year. Hopefully this year I'll be able to post some useful information to all .net coders out there.

A Review of OOP Concepts

What's OOP? Object Oriented Programming or simply OOP is a way of programming in which you think of Objects and the interrelated methods, functions or properties that each object must contain. There are four important concepts behind Object Oriented Programming these are Abstraction, Encapsulation, Polymorphism and Inheritance. Abstraction It the process of modelling wherein only the needed or the important functions of a class are shown and hide the inner workings to lessen the complexity. Encapsulation Often referred to as information hiding, encapsulation hides data from external access, in C#  access is given through access modifiers such as public, internal and protected. Polymorphism Is simply having many forms and shapes, you may ave many classes which can be used interchangeably, in .Net polymorphism is implemented through interfaces. Inheritance is the ability to create a new class from existing base class, parent class are called base class and the class t...