Solved

Update Date get updated in all rows

Posted on 2011-03-24
5
147 Views
Last Modified: 2012-05-31
hi,

This is the store proc am using to update and insert my table (credit goes to AngelIII),i have column in my table called updatedDate,when ever the record is get updated it will leave the time stamp there,but whenever the store proc runs it will update all the UpdatedDate column.

I am trying to update the UpdatedDate column only the record gets updated,some where am missing some thing,please correct me.

Thanks in Advance

ALTER PROC [dbo].[InsertPhone]
( @EmployeeNo int
, @PhoneNumber char(24)
)
as
begin
declare @CONTEXT_INFO varchar(100)
select @CONTEXT_INFO = COALESCE(CONVERT(VARCHAR(128), CONTEXT_INFO()), CURRENT_USER)

UPDATE o 
  SET o.employeeno = c.employeeno 
    , o.PhoneNumber =c.PhoneNumber
,o.DateUpdated=getdate()
    , o.CreatedBy=@CONTEXT_INFO
    , O.UpdatedBy=@CONTEXT_INFOT 
 FROM Phone o 
 JOIN ADUser c 
   ON c.EmployeeNo = o.EmployeeNo 
WHERE c.EmployeeNo =  @EmployeeNo

IF @@ROWCOUNT = 0
BEGIN
  INSERT INTO [Phone]
    ( employeeno
    , PhoneNumber
    , CreatedBy
    , UpdatedBy
    )
   SELECT Ad.employeeno
        , Ad.PhoneNo
        , @CONTEXT_INFO
        , @CONTEXT_INFO 
     FROM ADUser AD 
    WHERE Ad.employeeno=@EmployeeNo

END

Open in new window

0
Comment
Question by:Sha1395
  • 2
  • 2
5 Comments
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 500 total points
Comment Utility
I would guess a trigger on the table (which might be coded incorrectly) ?
because the UPDATE in this proc will only change the column value for the rows based on the WHERE + JOIN clause
0
 
LVL 9

Expert Comment

by:kaminda
Comment Utility
You query looks ok to me. Its either a data issue you are having in your tables or  a something else is running after this (may be a trigger as angelIII mentioned)
0
 

Author Comment

by:Sha1395
Comment Utility
Thanks for your comment,is this anyway i can check or debug ?
0
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
Comment Utility
I would first check if there is a trigger.
other than that, I would set up a test database with just the basic things to clearly identify when/what is happening
0
 

Author Comment

by:Sha1395
Comment Utility
I will check the trigger and thanks again.
0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

In this article—a derivative of my DaytaBase.org blog post (http://daytabase.org/2011/06/18/what-week-is-it/)—I will explore a few different perspectives on which week today's date falls within using Microsoft SQL Server. First, to frame this stu…
Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
Via a live example combined with referencing Books Online, show some of the information that can be extracted from the Catalog Views in SQL Server.
Using examples as well as descriptions, and references to Books Online, show the documentation available for datatypes, explain the available data types and show how data can be passed into and out of variables.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now