ASP 101 - Active Server Pages 101 - Web01
The Place ASP Developers Go!

Please visit our partners

Windows Technology Windows Technology
15 Seconds
4GuysFromRolla.com
ASP 101
ASP Wire
VB Forums
VB Wire
WinDrivers.com
internet.commerce internet.commerce
Partners & Affiliates














ASP 101 is an
internet.com site
ASP 101 is an internet.com site
IT
Developer
Internet News
Small Business
Personal Technology
International

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers

ASP 101 News Flash ASP 101 News Flash




Script Output:

Starting Transaction.

Executing SQL Command:
INSERT INTO [scratch] (text_field, integer_field, date_time_field) VALUES ('Friday', '9', '5/9/2008 5:53:51 PM');

Records Affected: 1

Commiting Transaction.


Run the script again: Commit Transaction or Rollback Transaction


ASP HTML Download            FAQ

ASP.NET Version

Ensuring data integrity is an important consideration when building an application. The data in your database is most likely valuable to your business and steps need to be taken to ensure that changes made to it are executed correctly. This is where transactions come into play.

Transactions are used to ensure that either all or none of the steps involved in an operation are executed. Accounting is a perfect example of why transactions are important. It's often necessary to transfer money from one account to another. In order to do this you need to first debit money from the source account and then credit it to the destination account. Without transactions, if something went wrong while processing the request, we might be left in a situation where the money had already been removed from the source account and not yet credited to the destination. The resulting confusion over the missing money could cause real problems.

Continuing the same example, by placing both the debit and credit operations into a single transaction we ensure that the funds either move to the new account or they do not. In this example, using a transaction eliminates the possibility of "creating" or "destroying" money. If the funds didn't get transferred then we still need to determine the source of the error and fix it, but at least we don't have to try and track down the missing money as well.

By default this page will execute CommitTrans in order to commit the transaction to the database. If you would like to run the script again you can choose whether or not it will commit (CommitTrans) or rollback (RollbackTrans) the transaction by clicking the corresponding links above.

Please note that clicking the above links will run the script again and either commit or rollback the insertion of a new record. It will not affect any records already added to the database including the one shown above which was already processed.

You should also note that I'm not really doing much of anything in the transaction that would require a transaction. I'm doing a simple insert so that you can see that the data does get inserted when the transaction is committed and doesn't get inserted when it is rolled back. In the real world, you'd most likely have at least two operations going on inside the transaction, but I'm just including one in order to keep things as simple as possible.

You can view any data that was committed to the database via our Simple Database sample. It's probably easiest if you use the value of the date_time_field (shown in the SQL statement above) to locate the appropriate record.


Samples

Home |  News |  Samples |  Articles |  Lessons |  Resources |  Forum |  Links |  Search |  Feedback



JupiterOnlineMedia

internet.comearthweb.comDevx.commediabistro.comGraphics.com

Search:

Jupitermedia Corporation has two divisions: Jupiterimages and JupiterOnlineMedia

Jupitermedia Corporate Info


Legal Notices, Licensing, Reprints, & Permissions, Privacy Policy.

Advertise | Newsletters | Tech Jobs | Shopping | E-mail Offers

Solutions
Whitepapers and eBooks
Microsoft Article: HyperV-The Killer Feature in WinServer ‘08
Avaya Article: How to Feed Data into the Avaya Event Processor
Microsoft Article: Install What You Need with Win Server ‘08
HP eBook: Putting the Green into IT
Whitepaper: HP Integrated Citrix XenServer for HP ProLiant Servers
Intel Go Parallel Portal: Interview with C++ Guru Herb Sutter, Part 1
Intel Go Parallel Portal: Interview with C++ Guru Herb Sutter, Part 2--The Future of Concurrency
Avaya Article: Setting Up a SIP A/S Development Environment
IBM Article: How Cool Is Your Data Center?
Microsoft Article: Managing Virtual Machines with Microsoft System Center
HP eBook: Storage Networking , Part 1
Microsoft Article: Solving Data Center Complexity with Microsoft System Center Configuration Manager 2007
MORE WHITEPAPERS, EBOOKS, AND ARTICLES
Webcasts
Intel Video: Are Multi-core Processors Here to Stay?
On-Demand Webcast: Five Virtualization Trends to Watch
HP Video: Page Cost Calculator
Intel Video: APIs for Parallel Programming
HP Webcast: Storage Is Changing Fast - Be Ready or Be Left Behind
Microsoft Silverlight Video: Creating Fading Controls with Expression Design and Expression Blend 2
MORE WEBCASTS, PODCASTS, AND VIDEOS
Downloads and eKits
Sun Download: Solaris 8 Migration Assistant
Sybase Download: SQL Anywhere Developer Edition
Red Gate Download: SQL Backup Pro and free DBA Best Practices eBook
Red Gate Download: SQL Compare Pro 6
Iron Speed Designer Application Generator
MORE DOWNLOADS, EKITS, AND FREE TRIALS
Tutorials and Demos
How-to-Article: Preparing for Hyper-Threading Technology and Dual Core Technology
eTouch PDF: Conquering the Tyranny of E-Mail and Word Processors
IBM Article: Collaborating in the High-Performance Workplace
HP Demo: StorageWorks EVA4400
Intel Featured Algorhythm: Intel Threading Building Blocks--The Pipeline Class
Microsoft How-to Article: Get Going with Silverlight and Windows Live
MORE TUTORIALS, DEMOS AND STEP-BY-STEP GUIDES