We help IT Professionals succeed at work.

Sql Server wont update tabe

adamtrask
adamtrask asked
on
Hi,

I am trying to see what's wrong with the following update code:

UPDATE Customer
SET CustomerName = 'Tom Bailey'
where CustomerID = 109

Sql server is not reporting errors, but I get the message: (0 row(s) affected).
Table-design.jpg
Comment
Watch Question

It has been a while since I used SQL Server, but I'll see if I can help in some way.

The first thing I would double check is that your table has a record with CustomerID 109.

Author

Commented:
Thanks  olivepeople, Yes it does.
Guy Hengel [angelIII / a3]Billing Engineer
GOLD EXPERT
Most Valuable Expert 2014
Top Expert 2009

Commented:
what data type is that field?

let me take an educated guess: it' CHAR(<size>)

if that's the case, change the field to at least VARCHAR(<size>) or better to int data type
otherwise, you change your query to:

WHERE customerid = cast(109 as CHAR(<size>))
If you were getting a result that said the row was updated, but not seeing the change -- I would suggest you double check that you're committing the transaction.  But why you're not seeing that row get updated is beyond me.  A quick trip around the web makes your syntax appear valid to my eyes...

I doubt you'd get a response if this was the problem, but just in case I'll leave you with the following link: http://www.simple-talk.com/sql/learn-sql-server/update--basics-in-sql-server/

These examples use GO -- but that might be specific to the app used to run the query.  Interesting stuff... again, sharing it just in case.

I hope you find a speedy solution.

Author

Commented:
angelIII,

The data type is nvarchar. I attached a snap shot showing the tables design.

olivepeople,

Thanks for your response...
Sr. Software Engineer
BRONZE EXPERT
Commented:
Try this first after your UPDATE

select CustomerID, CustomerName where CustomerID = 109

Do you get one row with CustomerID & CustomerName?

HTH
Ashok
AshokSr. Software Engineer
BRONZE EXPERT

Commented:
Are you using Stored Procedure?

Ashok
AshokSr. Software Engineer
BRONZE EXPERT

Commented:
Is CustomerName indexed?

If so, is it supposed to be UNIQUE?

Ashok

Author

Commented:
ashok111.....

This is embarrassing!

I just discovered that there is no column called customerName in the table. There is firstName and Lastname but on CustomerName!

My apologies to every one.

I guess SQL Server helped me make the mistake by not pointing out that column doesn't exist.


Thanks every one.... and sorry for wasting your time

Author

Commented:
Thanks
AshokSr. Software Engineer
BRONZE EXPERT

Commented:
This type of error can be easily avoided....

That is why you need to use SELECT statement before even trying to UPDATE
and
sometimes after UPDATE to figure out what's going on.

Glad to see the problem was fixed.

SELECT statements are safe to use and they should be used often.

Ashok

Explore More ContentExplore courses, solutions, and other research materials related to this topic.