<?xml version="1.0" encoding="UTF-8"?>
<GoodreadsResponse>
	<Request>
		<authentication>false</authentication>
		    <method><![CDATA[]]></method>
	</Request>
	
<book id="852918">
  <title><![CDATA[Programming the Perl DBI]]></title>
  <isbn><![CDATA[1565926994]]></isbn>
  <isbn13><![CDATA[9781565926998]]></isbn13>
  <work>
  <best-book-id type="integer">852918</best-book-id>
  <books-count type="integer">3</books-count>
  <default-description>The birth of new modules for the Perl scripting language is a regular occurrence, and the publication of an O'Reilly book about one of these modules is a sign of coming of age. Perl's DBI module, which facilitates the database-independent operation of Perl, achieves its rite of passage this month with the arrival of Alligator Descartes and Tim Bunce's excellent &lt;I&gt;Programming Perl's DBI&lt;/I&gt;. Perl's DBI interface is maintained by Bunce and includes submodule interfaces to Oracle, MySQL, Sybase, Microsoft ODBC, and many other smaller databases. O'Reilly Perl book aficionados take note: this is the cheetah book, named for the animal that graces its cover.&lt;p&gt; Far from being a formalized how-to or man page, &lt;I&gt;Programming Perl's DBI&lt;/I&gt; is a mini textbook in database programming,  ideal for CPAN-savvy Perl programmers with little or no experience in database programming. Descartes and Bunce develop primitive notions of databases by using flat files, and they introduce relational databases with careful didactic motivation. The example database used throughout the book contains ancient sacred monolithic sites in the UK and elsewhere, of which Stonehenge is the most famous. Readers will learn about these primitive places while storing, updating, deleting, sorting, and locking their descriptors using flat files, nonrelational and relational databases, and a tutorial on SQL. The last chapters describe the peculiarities of interacting with ODBC and introduce DBI's Perl-less diagnostic shell and database proxying.&lt;p&gt; The authors use many modules--including DBI itself--that are not part of the vanilla Perl distribution, and Descartes and Bunce introduce them without explaining where to find or build them. Perl newbies with no CPAN experience may find themselves derailed early. The Storage module seems not to be available on CPAN at all (at the time of this writing). Fortunately, DBI and friends build, test, and install seamlessly under Linux/Red Hat 6.1.&lt;p&gt; At 350 pages, &lt;I&gt;Programming the Perl DBI&lt;/I&gt; is 60 percent text--filled with highly annotated Perl code--and 40 percent appendices covering a detailed specification of DBI and 3-to-5-page descriptions of each of the 14 supported databases. Brevity is a large component of this book's wit. Clarity is the rest of it. &lt;I&gt;--Peter Leopold&lt;/I&gt;</default-description>
  <id type="integer">620583</id>
  <media-type nil="true"></media-type>
  <original-language-id type="integer" nil="true"></original-language-id>
  <original-publication-day type="integer">4</original-publication-day>
  <original-publication-month type="integer">2</original-publication-month>
  <original-publication-year type="integer">2000</original-publication-year>
  <original-title>Programming the Perl DBI</original-title>
  <rating-dist>total:20|5:3|4:4|3:9|2:4|1:0|</rating-dist>
  <ratings-count type="integer">20</ratings-count>
  <ratings-sum type="integer">66</ratings-sum>
  <reviews-count type="integer">36</reviews-count>
  <text-reviews-count type="integer">3</text-reviews-count>
</work>

  <average_rating><![CDATA[3.30]]></average_rating>
  <ratings_count><![CDATA[20]]></ratings_count>
  <text_reviews_count><![CDATA[3]]></text_reviews_count>
  <url><![CDATA[http://www.goodreads.com/book/show/852918.Programming_the_Perl_DBI]]></url>
  <authors>
        <author id="342251">
      <name><![CDATA[Tim Bunce]]></name>
      <role><![CDATA[]]></role>
      <url><![CDATA[http://www.goodreads.com/author/show/342251.Tim_Bunce]]></url>
      <average_rating><![CDATA[3.30]]></average_rating>
      <ratings_count><![CDATA[20]]></ratings_count>
      <text_reviews_count><![CDATA[3]]></text_reviews_count>
    </author>
      </authors>
  <reviews start="1" end="20" total="36">
    <review id="53835896">
  <user id="2253708">
    <name><![CDATA[Chris]]></name>
    <location><![CDATA[The United States]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/2253708-chris-n?utm_medium=api]]></url>
  </user>
    <rating>0</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Fri Apr 24 11:31:24 -0700 2009</date_added>
  <date_updated>Fri Apr 24 11:31:24 -0700 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[Programming the Perl DBI: Database Programming with Perl by Alligator Descartes (2000)]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/53835896?utm_medium=api]]></url>
</review>
    <review id="10752757">
  <user id="365479">
    <name><![CDATA[Colin]]></name>
    <location><![CDATA[Santa Clara, CA]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/365479-colin?utm_medium=api]]></url>
  </user>
    <rating>3</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
        <shelf name="advanced-topics" />
        <shelf name="databases" />
        <shelf name="programming" />
        <shelf name="technical" />
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at>Mon Sep 01 00:00:00 -0700 2003</read_at>
  <date_added>Thu Dec 20 09:18:06 -0800 2007</date_added>
  <date_updated>Thu Dec 20 09:21:45 -0800 2007</date_updated>
  <read_count></read_count>
    <body><![CDATA[Covering everything from database fundamentals to efficient query strategies and even ODBC, this book is an excellent primer to using the Perl DBI.  My first edition copy is over seven years out-of-date now, but having just flipped through it again, I can see many of the topics covered are still rel...<a href="http://www.goodreads.com/review/show/10752757">more...</a>]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/10752757?utm_medium=api]]></url>
</review>
    <review id="36595767">
  <user id="937986">
    <name><![CDATA[Red]]></name>
    <location><![CDATA[Chicago, IL]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/937986-red?utm_medium=api]]></url>
  </user>
    <rating>0</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
        <shelf name="perl" />
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Thu Oct 30 18:53:55 -0700 2008</date_added>
  <date_updated>Thu Oct 30 18:53:55 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[Programming the Perl DBI by Tim Bunce (2000)]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/36595767?utm_medium=api]]></url>
</review>
    <review id="74533781">
  <user id="2787540">
    <name><![CDATA[Julian]]></name>
    <location><![CDATA[Sofia, 42, Bulgaria]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/2787540-julian?utm_medium=api]]></url>
  </user>
    <rating>3</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Wed Oct 14 13:16:33 -0700 2009</date_added>
  <date_updated>Wed Oct 14 13:16:33 -0700 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/74533781?utm_medium=api]]></url>
</review>
    <review id="68816951">
  <user id="951315">
    <name><![CDATA[Tamara]]></name>
    <location><![CDATA[Silver Spring, MD]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/951315-tamara?utm_medium=api]]></url>
  </user>
    <rating>3</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
        <shelf name="own" />
        <shelf name="sys-admin" />
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Tue Aug 25 07:54:56 -0700 2009</date_added>
  <date_updated>Tue Aug 25 07:54:56 -0700 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/68816951?utm_medium=api]]></url>
</review>
    <review id="68030615">
  <user id="2644020">
    <name><![CDATA[Jonathan]]></name>
    <location><![CDATA[Ottawa, ON, Canada]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/2644020-jonathan?utm_medium=api]]></url>
  </user>
    <rating>0</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Wed Aug 19 08:50:08 -0700 2009</date_added>
  <date_updated>Wed Aug 19 08:50:08 -0700 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/68030615?utm_medium=api]]></url>
</review>
    <review id="59662902">
  <user id="626358">
    <name><![CDATA[Damian]]></name>
    <location><![CDATA[San Francisco, CA]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/626358-damian?utm_medium=api]]></url>
  </user>
    <rating>4</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at>Wed Apr 05 00:00:00 -0700 2006</read_at>
  <date_added>Sun Jun 14 17:41:57 -0700 2009</date_added>
  <date_updated>Sun Jun 14 17:42:13 -0700 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/59662902?utm_medium=api]]></url>
</review>
    <review id="53368367">
  <user id="1658898">
    <name><![CDATA[Necronian]]></name>
    <location><![CDATA[Beach Haven, NJ]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1658898-necronian?utm_medium=api]]></url>
  </user>
    <rating>0</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Mon Apr 20 12:34:43 -0700 2009</date_added>
  <date_updated>Mon Apr 20 12:34:43 -0700 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/53368367?utm_medium=api]]></url>
</review>
    <review id="45151823">
  <user id="1964055">
    <name><![CDATA[Scuppers]]></name>
    <location><![CDATA[Columbus, OH]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1964055-scuppers?utm_medium=api]]></url>
  </user>
    <rating>4</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Mon Feb 02 10:57:55 -0800 2009</date_added>
  <date_updated>Mon Feb 02 10:57:55 -0800 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/45151823?utm_medium=api]]></url>
</review>
    <review id="43912417">
  <user id="1941597">
    <name><![CDATA[Cliff]]></name>
    <location><![CDATA[The United States]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1941597-cliff?utm_medium=api]]></url>
  </user>
    <rating>3</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Thu Jan 22 06:38:15 -0800 2009</date_added>
  <date_updated>Thu Jan 22 06:38:15 -0800 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/43912417?utm_medium=api]]></url>
</review>
    <review id="43006435">
  <user id="880543">
    <name><![CDATA[Chris]]></name>
    <location><![CDATA[Leesburg, VA]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/880543-chris?utm_medium=api]]></url>
  </user>
    <rating>0</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
        <shelf name="own-but-not-read" />
        <shelf name="technical" />
        <shelf name="to-read" />
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Wed Jan 14 07:57:25 -0800 2009</date_added>
  <date_updated>Wed Jan 14 08:33:46 -0800 2009</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/43006435?utm_medium=api]]></url>
</review>
    <review id="37000038">
  <user id="1627733">
    <name><![CDATA[Ray]]></name>
    <location><![CDATA[Ishpeming, MI]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1627733-ray?utm_medium=api]]></url>
  </user>
    <rating>2</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Wed Nov 05 18:55:03 -0800 2008</date_added>
  <date_updated>Wed Nov 05 18:55:03 -0800 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/37000038?utm_medium=api]]></url>
</review>
    <review id="35673171">
  <user id="1634355">
    <name><![CDATA[Devin]]></name>
    <location><![CDATA[Burlingame, CA]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1634355-devin?utm_medium=api]]></url>
  </user>
    <rating>3</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Sun Oct 19 00:53:55 -0700 2008</date_added>
  <date_updated>Sun Oct 19 00:53:55 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/35673171?utm_medium=api]]></url>
</review>
    <review id="35633332">
  <user id="1613925">
    <name><![CDATA[Jeff]]></name>
    <location><![CDATA[Kennesaw, GA]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1613925-jeff?utm_medium=api]]></url>
  </user>
    <rating>2</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
        <shelf name="software" />
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Sat Oct 18 11:00:43 -0700 2008</date_added>
  <date_updated>Sat Oct 18 11:00:43 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/35633332?utm_medium=api]]></url>
</review>
    <review id="33785067">
  <user id="956741">
    <name><![CDATA[Andy]]></name>
    <location><![CDATA[Mchenry, IL]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/956741-andy?utm_medium=api]]></url>
  </user>
    <rating>3</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Wed Sep 24 21:14:09 -0700 2008</date_added>
  <date_updated>Wed Sep 24 21:14:09 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/33785067?utm_medium=api]]></url>
</review>
    <review id="33006636">
  <user id="837074">
    <name><![CDATA[Ivy]]></name>
    <location><![CDATA[The United States]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/837074-ivy?utm_medium=api]]></url>
  </user>
    <rating>0</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
        <shelf name="computers" />
        <shelf name="print" />
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Tue Sep 16 09:56:28 -0700 2008</date_added>
  <date_updated>Tue Sep 16 09:56:28 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/33006636?utm_medium=api]]></url>
</review>
    <review id="32400729">
  <user id="1510310">
    <name><![CDATA[Jeff]]></name>
    <location><![CDATA[Fresno, CA]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1510310-jeff-beebe?utm_medium=api]]></url>
  </user>
    <rating>0</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Mon Sep 08 20:00:25 -0700 2008</date_added>
  <date_updated>Mon Sep 08 20:00:25 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/32400729?utm_medium=api]]></url>
</review>
    <review id="31726448">
  <user id="1483035">
    <name><![CDATA[Mamonu]]></name>
    <location><![CDATA[Greece]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1483035-mamonu?utm_medium=api]]></url>
  </user>
    <rating>5</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
        <shelf name="perl" />
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Mon Sep 01 09:15:02 -0700 2008</date_added>
  <date_updated>Mon Sep 01 09:15:02 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/31726448?utm_medium=api]]></url>
</review>
    <review id="31296649">
  <user id="1466437">
    <name><![CDATA[Pip]]></name>
    <location><![CDATA[Valley Village, CA]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1466437-pip-stuart?utm_medium=api]]></url>
  </user>
    <rating>3</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Tue Aug 26 22:19:20 -0700 2008</date_added>
  <date_updated>Tue Aug 26 22:19:25 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/31296649?utm_medium=api]]></url>
</review>
    <review id="31016592">
  <user id="1452301">
    <name><![CDATA[Robert]]></name>
    <location><![CDATA[Wimberley, TX]]></location>        
    <url><![CDATA[http://www.goodreads.com/user/show/1452301-robert-skipper?utm_medium=api]]></url>
  </user>
    <rating>0</rating>
  <votes>0</votes>
  <sell_flag>false</sell_flag>
  <spoiler_flag>false</spoiler_flag>
  <shelves>
      </shelves>
  <recommended_for><![CDATA[]]></recommended_for>
  <recommended_by><![CDATA[]]></recommended_by>
  <read_at></read_at>
  <date_added>Sat Aug 23 17:52:07 -0700 2008</date_added>
  <date_updated>Sat Aug 23 17:52:07 -0700 2008</date_updated>
  <read_count></read_count>
    <body><![CDATA[]]></body>
    <url><![CDATA[http://www.goodreads.com/review/show/31016592?utm_medium=api]]></url>
</review>
    </reviews>
</book>
</GoodreadsResponse>