Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialJohn Fowler
7,913 PointsUpdating
When you update a value with SET
are you changing that value permanently? If so, how could you recover the original value?
3 Answers
Adlay Almeida
3,310 PointsYes John, unless the statement is placed in a transaction block (which would then require the committing of that transaction for it to be final), executing the UPDATE statement will permanently change the record or records. There is no simple way to recover the contents, hence the propensity in the DB community to create backups of both tables and databases.
Thomas Nilsen
14,957 PointsThe closest you'll get is using something like this
Jon Phillips
1,217 PointsWould the command work if done on a primary key? And if so, would that make the table unuseable?
Adlay Almeida
3,310 PointsYes Jon, I believe a primary key can be updated just like any other column. If it is an identity column the engine will complain and ask you to turn a specific flag off before doing so.
However, from a structural standpoint this is highly recommended against. You should never update primary key values and I cannot think of a situation where a workaround is not available.