Windows IT Pro is the authoritative and independent resource for windows nt, windows 2000, windows 2003, windows xp. Features a collection of resources and magazines for windows IT professionals.
  
  
  Advanced Search 


April 07, 2008

Jump Start: Using Transactions

RSS
Subscribe to Windows IT Pro | See More SQL Server and Database Articles Here | Reprints
Or get the Monthly Online Pass—only $5.95 a month!

Transactions are a powerful data integrity tool that many beginning database developers might not be aware of. Transactions are essentially a mechanism for grouping together one or more database updates so that SQL Server Express can treat them as a single entity. When a transaction is committed, all the update operations the transaction contains are written (or "committed") to the database. If a transaction is rolled back before it's been committed, all the transaction's update operations are undone and the database remains unchanged.

 

Using transactions will help you preserve database integrity, especially when you're updating multiple related tables, such as an order header table and an order detail table. When you group your updates of the related tables into a transaction, you ensure that all the tables are updated together. Even more important, if you encounter an error, the transaction ensures that you can roll back all the changes, preventing you from accidentally leaving orphaned rows in one table or another. For example, rolling back a transaction that contained both order header and order detail updates ensures the all the updates to both tables are removed and that there are no order detail rows that don't have a related order header row.

 

You start a transaction with the BEGIN TRANSACTION statement. You save the data using the COMMIT TRANSACTION statement, and you undo a transaction with the ROLLBACK TRANSACTION statement. The sample code below first creates a temporary table named #MyTempTable, then starts a new transaction that inserts a row into #MyTempTable. (I've given the transaction a name--InsertData--but naming a transaction is optional.) The code then commits that transaction and starts another transaction (which I've named DeleteData) that deletes a row. The code then rolls back the second transaction, leaving the table unchanged.

 

CREATE TABLE #MyTempTable

(

      Column1 INT,

      Column2 VARCHAR(20)

)

 

BEGIN TRANSACTION InsertData;

INSERT INTO #MyTempTable (Column1, Column2)

 VALUES (1, 'Test Data');

COMMIT TRANSACTION InsertData;

GO

-- New row is added

 

SELECT * FROM #MyTempTable

 

BEGIN TRANSACTION DeleteData;

DELETE FROM #MyTempTable WHERE Column1 = 1

ROLLBACK TRANSACTION DeleteData;

GO

 

-- Table is unchanged

SELECT * FROM #MyTempTable

 

Although you typically wouldn't use transactions for a single-line update as I've done here, they are essential for complex systems that update multiple related tables. Rolling back the transaction rolls back the entire group of updates, and that just might save your bacon.

End of Article



Reader Comments

You must log on before posting a comment.

If you don't have a username & password, please register now.




Top Viewed ArticlesView all articles
The Memory-Optimization Hoax

Don't believe the hype. At best, RAM optimizers have no effect. At worst, they seriously degrade performance. ...

VMware and the Future of Virtualization

What's next for virtualization and business IT? Windows IT Pro senior editor Jeff James speaks with VMware President and CEO Diane Greene on the future of virtualization technology. ...

What service packs and fixes are available?

...


SQL Server and Database Whitepapers SQL Server® 2005 – 64-Bit Migration Best Practices

It’s What You Make IT

Database Professionals: Experience Profile and Need Gaps in Development and Database Tools

Related Events Check out our list of Free Email Newsletters!

SQL Server and Database eBooks SQL Server Administration for Oracle DBAs

Taking Control: Monitoring the Windows Platform Proactively

A Guide to Windows Performance Tuning

Related SQL Server and Database Resources Become a VIP member of the Windows IT Pro community!
Get it all with the VIP CD and VIP access. A $500+ value for only $279!

Subscribe to Windows IT Pro!
Solve your toughest technical problems with our experts and access 10,000 + articles online. 30% off

Monthly Online Pass - Only $5.95!
Get instant access to 10,000+ articles from Windows IT Pro Magazine!

TechNet Virtual Labs
Evaluate and test Microsoft's newest products.


ADS BY GOOGLE SPONSORED LINKS FEATURED LINKS

Critical Challenges of ESI & Email Retention
Are you storing too much electronic information? Get expert legal advice and better understanding of what you are required to do as an IT professional.

Become a fan of Windows IT Pro on Facebook!
Join us on Facebook and be a fan of Windows IT Pro!

Sustainable Compliance: Are You Having a Resource Crisis?
Read this white paper to examine trends in compliance and security management and review approaches to reducing the cost and operational burden of compliance.

Rev Up Your IT Know-How with Our Recharged Magazine!
The improved Windows IT Pro provides trusted IT content with an enhanced new look and functionality! Get comprehensive coverage of industry topics, expert advice, and real-world solutions—PLUS access to over 10,000 articles online. Order today!

Get It All with Windows IT Pro VIP
Stock your IT toolbox with every solution ever printed in Windows IT Pro and SQL Server Magazine plus bonus Web-exclusive content on hot topics. Subscribe to receive the VIP CD and a subscription to your choice of Windows IT Pro or SQL Server Magazine!



Order Your Fundamentals CD Today!
Gain an introduction to Exchange, learn server security requirements, and understand how unified communications can play a role in your messaging strategies with this free Exchange CD.
Windows IT Pro Home Register About Us Affiliates / Licensing Media Kit Contact Us/Customer Service  
SQL Connected Home IT Library SuperSite FAQ Wininfo News
Europe Edition Office & SharePoint Pro Windows Dev Pro Windows Excavator 
 
 Windows IT Pro is a Division of Penton Media Inc.
 Copyright © 2008 Penton Media, Inc., All rights reserved. Terms and Use | Privacy Statement | Reprints and Licensing