Tuesday, May 22, 2012

How to reset the identity column of any table

Following syntax can be used to check the current identity value of table:

USE DatabaseName;
GO
DBCC CHECKIDENT ("TableName", NORESEED);
GO
 
Following syntax can be used to reset the current identity value of table: 
USE DatabaseName;
GO
DBCC CHECKIDENT ("TableName", RESEED, 10);
GO 

Fetch outlook data

Following code can be used to authenticate with outlook and fetch email content and attachments
1. Authenticate outlook.
 public void AuthenticateOutlook()
      
           Pop3Client pop3Client;
            pop3Client = new Pop3Client();
            pop3Client.Connect("pod51016.outlook.com", 995, true);
            pop3Client.Authenticate("emailID", "Password");
            int count = pop3Client.GetMessageCount();
            if (count > 0)
                FetchOutlookData(pop3Client, count);

   
        private void FetchOutlookData(Pop3Client pop3Client, int count)
        {
            DataTable dtMessages = new DataTable();
            dtMessages.Columns.Add("EmailFrom");
            dtMessages.Columns.Add("EmailSubject");
            dtMessages.Columns.Add("EmailDateSent");
            dtMessages.Columns.Add("EmailContent");
            dtMessages.Columns.Add("EmailMessageId");
            //dtMessages.Columns.Add("ResumeFilename");
            //dtMessages.Columns.Add("ResumeChangedName");
            dtMessages.Columns.Add("EmailCounter");

            DataTable dataTableAttachment = new DataTable();
            dataTableAttachment.Columns.Add("EmailCounter");
            dataTableAttachment.Columns.Add("AttachmentName");
            dataTableAttachment.Columns.Add("ActualName");
            for (int i = GetMailCounter() + 1; i <= 30; i++)
            {
                Message message = pop3Client.GetMessage(i);

                MessagePart messagePart = message.MessagePart;
                Thread.CurrentThread.CurrentCulture = new CultureInfo("en-GB");
                string mailDate = message.Headers.DateSent.ToShortDateString();
                string currentDate = DateTime.Now.ToShortDateString();

                dtMessages.Rows.Add();
                dtMessages.Rows[dtMessages.Rows.Count - 1]["EmailFrom"] = message.Headers.From;
                dtMessages.Rows[dtMessages.Rows.Count - 1]["EmailSubject"] = message.Headers.Subject;
                dtMessages.Rows[dtMessages.Rows.Count - 1]["EmailDateSent"] = message.Headers.DateSent;

                if (messagePart.Body != null)
                {
                    dtMessages.Rows[dtMessages.Rows.Count - 1]["EmailContent"] = messagePart.BodyEncoding.GetString(messagePart.Body);
                }
                else
                {
                    dtMessages.Rows[dtMessages.Rows.Count - 1]["EmailContent"] = "";
                }
                dtMessages.Rows[dtMessages.Rows.Count - 1]["EmailMessageId"] = message.Headers.MessageId;
                dtMessages.Rows[dtMessages.Rows.Count - 1]["EmailCounter"] = i;
                DLAttachment(message, i, dataTableAttachment);
                // pop3Client.DeleteMessage(i);
            }
         }

Monday, May 21, 2012

To add column in table through stored procedure

ALTER PROCEDURE [dbo].[insert_column]

-- Add the parameters for the stored procedure here

@columnname as VARCHAR(max),
@datatype as VARCHAR (max)
AS
DECLARE @SQL nvarchar(500)
DECLARE @Colm nvarchar(50)
DECLARE @type nvarchar(50)

SET @Colm = @columnname
SET @type = @datatype

SET @SQL = 'ALTER TABLE ParsedResumeData ADD '+@colm+' '+@type+'
DEFAULT 0'
EXEC sp_executesql @SQL,N'@columnname as VARCHAR(max),
@datatype as VARCHAR (max)',@columnname,@datatype