The i-Technology Media!
Register | Log in
   
 
.NET  ·  AJAX  ·  CLOUD  ·  ECLIPSE  ·  FLEX  ·  OPEN WEB  ·  iPHONE  ·  JAVA  ·  LINUX  ·  OPEN SOURCE  ·  ORACLE  ·  PBDJ  ·  SEARCH  ·  SILVERLIGHT  ·  SOA  ·  VIRTUALIZATION  ·  WEB 2.0  ·  WIRELESS  ·  XML
YOUR FEEDBACK
Cloud Envelops Exchange & SharePoint
the usr wrote: So... how about your prediction that SCO would prevail? 11/20/2008 565 - FINAL...
Nov. 22, 2008 07:46 AM
Cloud Computing Conference
November 19-21 San Jose, CA
Register Today and SAVE !..
Did you read today's front page stories & breaking news?
Live Google News by SYS-CON!

TOP THREE LINKS YOU MUST CLICK ON


Book Review
Book Review: Pro ADO.NET 2.0
A complete guide to ADO.NET 2.0

By: Dennis Hayes
Feb. 27, 2006 12:00 PM

This book bills itself as the only ADO.NET you will ever need. This is a bit boisterous, but mostly true. This book covers pretty much all facets of ADO.NET programming, and covers them well. This well-written book can take an ADO.NET novice, and advance him or her to being an ADO.NET pro.

This book concentrates on ADO.NET, so to be a complete database programmer, you will need other books to cover the non-ADO.NET parts of database programming; in particular, this book does not really cover SQL syntax, or non-programming aspects of databases. Experienced database programmers will already have this knowledge, but programmers who are new to database programming will need at a least a good book on SQL syntax. However that is fine; no book can cover everything, and as far as ADO.NET 2.0 itself goes, this is likely to be the only book you need.

Like most ADO.NET books, this one starts off discussing the problems with connected ADO database programming, and how the disconnected model of ADO.NET solves these problems. It then does an excellent job of presenting an overview of the entire ADO.NET class hierarchy. This includes the base classes that define ADO.NET, and the derived classes that provide interfaces for each of the different databases. It does this both graphically with class diagrams, and by discussing each of the classes and its members.

It then shows how to do basic database programming using both the drag-and-drop capabilities of ADO.NET components and Visual Studio, and also how to manually create connections using just code. The next half dozen chapters go into more detail on each part of database programming, starting with connecting to the database with details on the IdbConnection interface and the DbConnection class. It also covers why connection pooling is important, how it works, and how to change the default settings when needed.

Next it covers basic database queries on connected databases, and some more advanced topic such as executing large queries asynchronously, storing .NET objects in SQL Server 2005, and retrieving multiple datasets with a single query. Although this book concentrates on using SQL Server 2005, it also points out how things differ if you are using Oracle, Access, or older versions of SQL Server. Here it points out that you can return multiple datasets from Oracle, but it warns that for future compatibility, you should return multiple cursors instead. I like that about this book. It follows this with a chapter on disconnected databases covering details on the DataSet object including tables, rows, columns, constraints, relations, and primary keys. The chapter ends with a discussion of strongly typed DataSets using XML Schemas. Later in the advanced part of the book there is a chapter devoted to accessing XML files as databases. There is a chapter on retrieving data and creating queries both manually and graphically, a chapter on sorting, searching, and filtering, which includes more information on the XmlDataDocumnt object, and creating XmlSchemas. XML plays several key roles in ADO.NET, and this book reflects that.

The final chapter on basic ADO.NET covers updating data, including adding, modifying, and deleting rows. It spends a lot of time on merging tables, including some more information on differences between how SQL Sever and Oracle handle merging. The first chapter in what I would call the advanced section (the book is not officially divided into two sections) continues with more advanced updating issues such as concurrency issues, null values, and how triggers affect the "number of rows affected" value returned by an update. It also includes working with hierarchical data. The next chapter covers transactions starting with the basic ACID definition (Atomic, Consistent, Isolated, and Durable), to threads and differences between ADO.NET 1.1 and ADO.NET 2.0.

The next-to-last chapter covers using .NET as stored procedures and triggers inside SQL Server. Microsoft and others are pushing triggers and stored procedures as the best and most modern way to implement database logic, and starting with SQL 2005, SQL server can import .NET assemblies into the server to be used as stored procedures. Personally, I think this is the coolest feature in SQL 2005, and this book does a good job of getting you started using it.

The final chapter in the book covers ADO.NET best practices. This chapter is dived into two sections. The first sections covers situations such as deciding between using a DataReader and a DataSet, where the choice depends on the job. The book gives good, concise information on when to use which one. The last part of the chapter covers situations like connected versus disconnected databases, where baring unusual circumstances, one will clearly be the better option.

Also as a bonus, until about March, those who purchase this book can also download the ebook (normally $25) for free.

This is likely to be the one ADO.NET book that stays next to my desk for quick reference.

SIDEBAR

Title: Pro ADO.NET 2.0
Author: Sahil Malik
Publisher: Apress
ISBN #: 1-59059-512-2

Price: US $49.99

Published Feb. 27, 2006— Reads 12,848 — Feedback 1
Copyright © 2008 SYS-CON Media. All Rights Reserved.
About Dennis Hayes
Dennis Hayes is a programmer at Georgia Tech in Atlanta Georgia where he writes software for the Adult Cognition Lab in the Psychology Department. He has been involved with the Mono project for over six years, and has been writing the Monkey Business column for over five years.

Add Your Feedback

In order to post a comment you need to be registered and logged in.

Register | Log in

Please wait while we process your request...





SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON FEATURED WHITEPAPERS

ADS BY GOOGLE

ADVERTISE   |   MAGAZINE SUBSCRIPTIONS   |   FREE BREAKING-NEWSLETTERS!   |   SYS-CON.TV   |   BLOG-N-PLAY!   |   WEBCAST   |   EDUCATION   |   RESEARCH

.NET Developer's Journal - .NETDJ   |   ColdFusion Developer's Journal - CFDJ   |   Eclipse Developer's Journal - EDJ   |   Enterprise Open Source Magazine - EOS
Open Web Developer's Journal - OPENWEB   |   iPhone Developer's Journal - iPHONE   |   Virtualization - Virtualization   |   Java Developer's Journal - JDJ   |   Linux.SYS-CON.com
PowerBuilder Developer's Journal - PBDJ   |   SEO / SEM Journal - SJ   |   SOAWorld Magazine - SOAWM   |   IT Solutions Guide - ITSG   |   Symbian Developer's Journal - SDJ
WebLogic Developer's Journal - WLDJ   |   WebSphere Journal - WJ   |   Wireless Business & Technology - WBT   |   XML-Journal - XMLJ   |   Internet Video - iTV
Flex Developer's Journal - Flex   |   AJAXWorld Magazine - AWM   |   Silverlight Developer's Journal - SLDJ   |   PHP.SYS-CON.com   |   Web 2.0 Journal - WEB2
Apache   |   CMS   |   CRM   |   HP   |   Oracle Journal   |   Perl   |   Python   |   Red Hat   |   Ruby on Rails   |   SAP   |   SaaS

SYS-CON MEDIA:   ABOUT US   |   CONTACT US   |   COMPANY NEWS   |   CAREERS   |   SITE MAP
SYS-CON EVENTS:   |  AJAXWorld Conference & Expo  |  iPhone Developer Summit  |  OpenWeb Developer Summit  |  SOA World Conference & Expo  |  Virtualization Conference & Expo
INTERNATIONAL SITES:   India  |  U.K.  |  Canada  |  Germany  |  France  |  Australia  |  Italy  |  Spain  |  Netherlands  |  Brazil  |  Belgium
 Terms of Use & Our Privacy Statement     About Newsfeeds / Video Feeds
Copyright ©1994-2008 SYS-CON Publications, Inc. All Rights Reserved. All marks are trademarks of SYS-CON Media.
Reproduction in whole or in part in any form or medium without express written permission of SYS-CON Publications, Inc. is prohibited.
 
close this window