_______                          .__ .__   .__   .__                 
      \      \    ____   __ __ _______ |__||  |  |  |  |__|  ____    ____  
      /   |   \ _/ __ \ |  |  \\_  __ \|  ||  |  |  |  |  | /  _ \  /    \ 
     /    |    \\  ___/ |  |  / |  | \/|  ||  |__|  |__|  |(  <_> )|   |  \
     \____|__  / \___  >|____/  |__|   |__||____/|____/|__| \____/ |___|  /
    =========\/======\/=================================================\/==
  v0.01 04/JUL/2007 (C) Copyright 2007-2007 Scott D. Yelich SOME RIGHTS RESERVED
 .,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.,-*~'`^`'~*-,._.-*~'`^`'~*-,._.,-*~'`^`'~*-,. 


The software is released under Creative Commons - Attribution 3.0 unported 
see: http://creativecommons.org/licenses/by/3.0/legalcode

See "LICENSE" for text, URL above for latest version.

See "INSTALL" for information on installation (and usage).

See "TODO" for ideas about what could be done in a next version.


The Xql3 here uses the "convenience" function sqlite3_get_table that
keeps the entire results in memory.  Not only that, but the class then
copies them values out of this location to put them into a standard
container (ie: from a char **_result to a std::vector).  If the return
set is large, this would not be the best technique.  The next version,
v2, will have a newly rewritten "exec" in the spirit of the deprecated
sqlite3 exec (use of prepare+step is preferred, this is buried in the
docs...), but minus a few of the features of the legacy exec.

Enjoy!

Scott