My shared items


Friday, October 5, 2007

"CURSOR" in SQL Server

Cursor is a database object used by applications to manipulate data in a set on a row-by-row basis, instead of the typical SQL commands that operate on all the rows in the set at one time. For example, you can use cursor to include a list of all user databases and make multiple operations against each database by passing each database name as a variable.

Cursors are the SLOWEST way to access data inside SQL Server


USE Northwind
DECLARE @EmployeeID varchar(10), @Counter int

EmployeeID int,
OrderCount int

SET @Counter = 0
(EmployeeID) FROM Employees

OPEN Employees
WHILE( @Counter < @@CURSOR_ROWS)


FETCH NEXT FROM Employees INTO @EmployeeID

INSERT INTO #tempTbl(EmployeeID, OrderCount)
SELECT @EmployeeID AS EmployeeID, COUNT(O.EmployeeID) AS OrderCount FROM Employees E, Orders O WHERE O.EmployeeID = @EmployeeID AND E.EmployeeID = O.EmployeeID

SET @Counter = @Counter + 1

SELECT * FROM #tempTbl


CLOSE Employees




EmployeeID OrderCount

3 127
4 156
8 104
1 123
2 96
6 67
7 72
5 42
9 43

Monday, September 10, 2007

Embeding Images into Application in C#.


These Methods are used To Embed Images into Applications.......

///By Ramesh.R

private Bitmap EmbedImage(string imagePath)
return new Bitmap(typeof(Form1), imagePath);
catch (Exception ex)
throw ex;


public static Bitmap EmbedImage1(string imagePath)
Assembly assembly = Assembly.GetExecutingAssembly();
Stream stream;
stream = null;
Bitmap bmp = null;
stream = assembly.GetManifestResourceStream(imagePath);
stream.Position = 0;
bmp = (Bitmap)Bitmap.FromStream(stream);
return bmp;
catch (Exception ex)
throw ex;


imagePath --> Path where the Image Placed..

Both Methods returns a Bitmap instance of the Image.

For this Method to work make sure the Images Property

"BuildAction : Embedded Resource"

Saturday, September 8, 2007

Master Pages Demo

Master Page Design:

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="MasterPage.master.cs" Inherits="MasterPage" %>
DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html xmlns="">
<head runat="server">
<title>Master Pages Demotitle>

<body leftmargin="0" topmargin="0" scroll="no">
<form id="form1" runat="server">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; height: 100%">
<tr style="height: 3%">
<td valign="top" align="right" background="Images/banner.gif">
<table width="100%" style="text-align: right">
<td width="38%" valign="bottom">
<td valign="bottom" align="right">


<tr height="97%">
<td align="center">
<table width="99%" height="100%">
<tr style="height: 3%">
<td align="left" bgcolor="#BDB14B" valign="top" style="font: Bold; font-family: Verdana;">

<asp:Label ID="Label1" runat="server" Text="">asp:Label>
<tr style="height: 94%">
<asp:ContentPlaceHolder ID="ScreenContent" runat="server">
<asp:Label ID="Label2" runat="server" Text="">asp:Label>
<asp:Label ID="Label3" runat="server" Text="">asp:Label>
<tr style="height: 3%" bgcolor="#BDB14B">
<td align="center" style="font-family: Verdana; font-size: 12;">


Master Page Code-Behind File:

public partial class MasterPage : System.Web.UI.MasterPage
string pageHeadingTitle = "Header";

/// Property return a string
public string PageHeadingTitle
return pageHeadingTitle;
pageHeadingTitle = value;

/// Property returns a Label Object
public Label MasterPageLabel
return Label2;
Label2 = value;

protected void Page_Load(object sender, EventArgs e)
if (!Page.IsPostBack)
Label1.Text = PageHeadingTitle;

Content Page Design:

<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" Title="Default1" %>
<%@ MasterType VirtualPath="~/MasterPage.master" %>
<asp:Content ID="Content2" ContentPlaceHolderID="ScreenContent" Runat="Server">

Content Page Code Behind File:

///Using FindControl()
this.MasterPageFile = "MasterPage.master";
MasterPage mp = (MasterPage)this.Master;

Label lbl = mp.FindControl("Label2") as Label;
if (lbl != null)
lbl.Text = "Label2";


(Master.FindControl("Label3") as Label).Text = "Label3";

///Using Properties Or Controls in Master Page
Master.PageHeadingTitle = "Content Page Header";
Master.MasterPageLabel.Font.Size = 25;
Master.MasterPageLabel.Text = "Label2";

Saturday, September 1, 2007

How to Get AM PM Formatted DateTime in SQL Server

The Following Function is used to Gets the AM Or PM Formatted DateTime for the Given Date

RETURNS char(25)

DECLARE @time varchar(5)
SET @time = CONVERT(char(10), @inputDate, 108)

DECLARE @date varchar(10)
SET @date = CONVERT(char(10), @inputDate, 101)

DECLARE @hour varchar(2)
DECLARE @minute varchar(2)

SET @hour = LEFT(@time,2)
SET @minute = SUBSTRING(@time,4,2)

DECLARE @amOrPm char(2)
SET @amOrPm = 'AM'

IF CAST(@hour as int) = 0 BEGIN
SET @hour = 12
SET @amOrPm = 'AM'

ELSE IF CAST(@hour as int) = 12 BEGIN
SET @amOrPm = 'PM'

ELSE IF CAST(@hour as int) > 12 BEGIN
SET @hour = @hour - 12
SET @amOrPm = 'PM'

DECLARE @outputDate char(25)
SET @outputDate = @date + ' ' + @hour + ':' + @minute + ' ' + @amOrPm

RETURN @outputDate

For Example you maye use like

PRINT dbo.GetAMPMFormattedDateTime('01-08-2007 20:10')

it will prints
01/08/2007 8:10 PM

SQL Server DateTime Related...


CONVERT function explicitly converts an expression of one data type to another. CAST and CONVERT provide similar functionality.


CAST ( expression AS data_type )

CONVERT ( data_type [ ( length ) ] , expression [ , style ] )



Is any valid Microsoft SQL Server expression.


Is the target system-supplied data type, including bigint and sql_variant. User-defined data types cannot be used.


Is an optional parameter of nchar, nvarchar, char, varchar, binary, or varbinary data types.


Is the style of date format used to convert datetime or smalldatetime data to character data (nchar, nvarchar, char, varchar, nchar, or nvarchar data types), or the string format when converting float, real, money, or smallmoney data to character data (nchar, nvarchar, char, varchar, nchar, or nvarchar data types).

yy yyyy

- 0 or 100
Default mon dd yyyy hh:miAM (or PM)
1 101 USA mm/dd/yy
2 102 ANSI
3 103 British/French dd/mm/yy
4 104 German
5 105 Italian dd-mm-yy
6 106 - dd mon yy
7 107 - Mon dd, yy
8 108 - hh:mm:ss
- 9 or 109
Default + milliseconds mon dd yyyy hh:mi:ss:mmmAM (or PM)
10 110 USA mm-dd-yy
11 111 JAPAN yy/mm/dd
12 112 ISO yymmdd
- 13 or 113
Europe default + milliseconds dd mon yyyy hh:mm:ss:mmm(24h)
14 114 - hh:mi:ss:mmm(24h)
- 20 or 120
ODBC canonical yyyy-mm-dd hh:mi:ss(24h)
- 21 or 121
ODBC canonical (with milliseconds) yyyy-mm-dd hh:mi:ss.mmm(24h)
- 126 ISO8601 yyyy-mm-dd Thh:mm:ss:mmm(no spaces)
- 130 Kuwaiti dd mon yyyy hh:mi:ss:mmmAM
- 131 Kuwaiti dd/mm/yy hh:mi:ss:mmmAM

Some Other Date Related Functions...

Dateadd: Returns a new datetime value based on adding an interval to the specified date.

Syntax: DATEADD ( datepart, number, date )

Datediff: Returns the number of date and time boundaries crossed between two specified dates.

Syntax: DATEDIFF ( datepart, startdate, enddate )

Datename: Returns a character string representing the specified datepart of the specified date.

Syntax: DATENAME ( datepart, date )

Datepart: Returns an integer representing the specified datepart of the specified date.

Syntax: DATEPART ( datepart, date )

Day: Returns an integer representing the day datepart of the specified date.

Syntax: DAY ( date )

Getdate: Returns the current system date and time in the Microsoft® SQL Server™ standard internal format for datetime values.

Syntax: GETDATE ( )

Month: Returns an integer that represents the month part of a specified date.

Syntax: MONTH ( date )

Year: Returns an integer that represents the year part of a specified date.

Syntax: YEAR ( date )


datepart--> may be mm, dd, yy, yyyy, mi..etc...


PRINT DATEADD ( dd, 60, 'Sep 1 2007 10:46AM')

will prints
Oct 31 2007 10:46AM

Thursday, August 30, 2007

"Add To Favorites" Dialog in JavaScript

JavaScript to launch the browser Favorites window to bookmark the current page.

function bookmarkThisSite(url, bookmarkName)
if (sidebar)
sidebar.addPanel(bookmarkName, url,"");
else if( document.all )
external.AddFavorite(url, bookmarkName);
else if( window.opera && window.print )
return true;
return true;

The JavaScript Programming Language

Tuesday, August 28, 2007

How Do I Get Paths and URL fragments from the HttpRequest object?


DLL Register And UnRegister in Mouse Context Menu

Normal Case:
For register DLL or OCX:
rundll32 yourdll.dll,DLLRegisterServer
rundll32 yourocx.ocx,DLLRegisterServer

For unregister DLL or OCX:
rundll32 yourdll.dll,DLLUnregisterServer
rundll32 yourocx.ocx,DLLUnregisterServer

For Mouse Context Menu:

If do you want make a "Right mouse-click" option, enter in the REGEDIT and make the options:

For DLL Register:

Make a new key "Shell":

Make a new key "Register":

In the "Default" value, type: "DLL Register"
And make a new key "Command":

In the "Default" value, type:
rundll32.exe "%1",DllRegisterServer

For DLL Unregister:

Make a new key "Shell":

Make a new key "Unregister":

In the "Default" value, type: "DLL Unregister"
And make a new key "Command":

In the "Default" value, type:
rundll32.exe "%1",DllUnregisterServer

For OCX Register:

Make a new key "Shell":

Make a new key "Register":

In the "Default" value, type: "OCX Register"
And make a new key "Command":

In the "Default" value, type:
rundll32.exe "%1",DllRegisterServer

For OCX Unregister:

Make a new key "Shell":

Make a new key "Unregister":

In the "Default" value, type: "OCX Unregister"
And make a new key "Command":

In the "Default" value, type:
rundll32.exe "%1",DllUnregisterServer

Client-Side JavaScript Reference

Client-Side JavaScript Reference:

"Client-Side JavaScript Reference This book is a reference manual for the JavaScript language, including both core and client-side JavaScript for version 1.3. JavaScript is Netscape's cross-platform, object-based scripting language for client and server applications."

Saturday, August 25, 2007

Delegates and Events in C# / .NET


All of us have been exposed to event driven programming of some sort or the other. C# adds on value to the often mentioned world of event driven programming by adding support through events and delegates. The emphasis of this article would be to identify what exactly happens when you add an event handler to your common UI controls. A simple simulation of what could possibly be going on behind the scenes when the AddOnClick or any similar event is added to the Button class will be explained. This will help you understand better the nature of event handling using multi cast delegates.


A delegate in C# is similar to a function pointer in C or C++. Using a delegate allows the programmer to encapsulate a reference to a method inside a delegate object. The delegate object can then be passed to code which can call the referenced method, without having to know at compile time which method will be invoked.


The Event model in C# finds its roots in the event programming model that is popular in asynchronous programming. The basic foundation behind this programming model is the idea of "publisher and subscribers." In this model, you have publishers who will do some logic and publish an "event." Publishers will then send out their event only to subscribers who have subscribed to receive the specific event.

More Information:

Thursday, August 9, 2007

enum at C# Online.NET (CSharp-Online.NET)

enum at C# Online.NET (CSharp-Online.NET)


The Basics

An enum is a value type with a set of related named constants often referred to as an enumerator list. They allow code to look a lot cleaner and easier to read by getting rid of "magic numbers", that is to say, they get rid of numbers which have a purpose within a module of code, but make the code harder to read. If a single number needs a definition to make it easier to read then use a constant as shown below.

public const int North = 0;

However, if more than one related number needs a definition, then use an enumeration.


An enum is declared as follows:

[attributes] [modifiers] enum identifier [:base-type]
enumerator-list [,]

The attributes is optional and is used to hold additional declarative information.

The modifier is optional. The allowed modifiers are new, public, protected, internal and private.

The keyword enum must be followed by an identifier that names the enum.

The base-type of an enumeration may be one of the following; byte, sbyte, short, ushort, int, uint, long or ulong. If no base-type is declared, than the default of int is used.

The enumerator-list contains the identifiers which are separated by commas (optionally including a value assignment).

The first enumerator begins at zero by default and each enumerator following is increased by 1. This can be overridden so that each member of the enumerator-list contains its own unrelated value (see second example below). Two items in an enumeration can hold the same value, however, this will cause problems if you use an automated switch statement where all elements are added.

Example 1 – A simple enumeration

An application may need to work with directions. Instead of using four numbers to represent the major directions, an enumeration works better. The numbers then become irrespective as the directions are named.

enum Direction

Example 2 – Number specific

Now consider the same enumeration, but with each direction holding the value clockwise that they are from North.

enum Direction
North = 0,
East = 90,
South = 180,
West = 270

We would use the enumeration in the same manner, but the values have different meanings.


To get the underlying value of an item in an enumerator-list, you need to have an explicit cast to convert it from the enum type to its integral type. The following code displays this and makes use of the enum in example 2.

static void Main(string[] args)
Console.WriteLine("Direction Enum Members by Name:");

// get a list of member names from Direction enum,
// figure out the numeric value, and display
foreach (string direction in Enum.GetNames(typeof(Direction)))
Console.WriteLine("Direction Member: {0}\n Value: {1}",
direction, (int)Enum.Parse(typeof(Direction), direction));

And here is the output

Direction Enum Members by Name:
Direction Member: North
Value: 0
Direction Member: East
Value: 90
Direction Member: South
Value: 180
Direction Member: West
Value: 270

Some useful methods

  • Enum.GetName - retrieves the name of the constant in the enumeration that has a specific value.
  • Enum.GetNames - retrieves an array of the names of the constants in the enumeration.
  • Enum.GetValues - retrieves an array of the values of the constants in the enumeration.
  • Enum.IsDefined - returns an indication whether a constant with a specified value exists in a specified enumeration.

MSDN references

Tuesday, August 7, 2007 Regular Expression Cheat Sheet (.NET Framework) Regular Expression Cheat Sheet (.NET Framework): " Regular Expression Cheat Sheet (.NET)" Regular Expression Cheat Sheet (.NET)

Metacharacters Defined
^Start of a string.
$End of a string.
.Any character (except \n newline)
{...}Explicit quantifier notation.
[...]Explicit set of characters to match.
(...)Logical grouping of part of an expression.
*0 or more of previous expression.
+1 or more of previous expression.
?0 or 1 of previous expression; also forces minimal matching when an expression might match several strings within a search string.
\Preceding one of the above, it makes it a literal instead of a special character. Preceding a special matching character, see below.
Metacharacter Examples
PatternSample Matches
^abcabc, abcdefg, abc123, ...
abc$abc, endsinabc, 123abc, ...
a.cabc, aac, acc, adc, aec, ...
bill|tedted, bill
a[bB]cabc, aBc
ab*cac, abc, abbc, abbbc, ...
ab+cabc, abbc, abbbc, ...
ab?cac, abc
a\sca c
Character Escapes
Escaped CharDescription
ordinary charactersCharacters other than . $ ^ { [ ( | ) ] } * + ? \ match themselves.
\aMatches a bell (alarm) \u0007.
\bMatches a backspace \u0008 if in a []; otherwise matches a word boundary (between \w and \W characters).
\tMatches a tab \u0009.
\rMatches a carriage return \u000D.
\vMatches a vertical tab \u000B.
\fMatches a form feed \u000C.
\nMatches a new line \u000A.
\eMatches an escape \u001B.
\040Matches an ASCII character as octal (up to three digits); numbers with no leading zero are backreferences if they have only one digit or if they correspond to a capturing group number. (For more information, see Backreferences.) For example, the character \040 represents a space.
\x20Matches an ASCII character using hexadecimal representation (exactly two digits).
\cCMatches an ASCII control character; for example \cC is control-C.
\u0020Matches a Unicode character using a hexadecimal representation (exactly four digits).
\*When followed by a character that is not recognized as an escaped character, matches that character. For example, \* is the same as \x2A.
Character Classes
Char ClassDescription
.Matches any character except \n. If modified by the Singleline option, a period character matches any character. For more information, see Regular Expression Options.
[aeiou]Matches any single character included in the specified set of characters.
[^aeiou]Matches any single character not in the specified set of characters.
[0-9a-fA-F]Use of a hyphen (–) allows specification of contiguous character ranges.
\p{name}Matches any character in the named character class specified by {name}. Supported names are Unicode groups and block ranges. For example, Ll, Nd, Z, IsGreek, IsBoxDrawing.
\P{name}Matches text not included in groups and block ranges specified in {name}.
\wMatches any word character. Equivalent to the Unicode character categories [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \w is equivalent to [a-zA-Z_0-9].
\WMatches any nonword character. Equivalent to the Unicode categories [^\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \W is equivalent to [^a-zA-Z_0-9].
\sMatches any white-space character. Equivalent to the Unicode character categories [\f\n\r\t\v\x85\p{Z}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \s is equivalent to [ \f\n\r\t\v].
\SMatches any non-white-space character. Equivalent to the Unicode character categories [^\f\n\r\t\v\x85\p{Z}]. If ECMAScript-compliant behavior is specified with the ECMAScript option, \S is equivalent to [^ \f\n\r\t\v].
\dMatches any decimal digit. Equivalent to \p{Nd} for Unicode and [0-9] for non-Unicode, ECMAScript behavior.
\DMatches any nondigit. Equivalent to \P{Nd} for Unicode and [^0-9] for non-Unicode, ECMAScript behavior.