File: index.html

package info (click to toggle)
mysql%2B%2B 3.0.0-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 10,328 kB
  • ctags: 9,487
  • sloc: cpp: 33,486; sh: 3,091; perl: 809; makefile: 683
file content (44 lines) | stat: -rw-r--r-- 12,548 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>MySQL++ v3.0.0 User Manual</title><link rel="stylesheet" href="tangentsoft.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.69.1"><link rel="start" href="index.html" title="MySQL++ v3.0.0 User Manual"><link rel="next" href="overview.html" title="2.Overview"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">MySQL++ v3.0.0 User Manual</th></tr><tr><td width="20%" align="left"></td><th width="60%" align="center"></th><td width="20%" align="right"><a accesskey="n" href="overview.html">Next</a></td></tr></table><hr></div><div class="article" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="id2700074"></a>MySQL++ v3.0.0 User Manual</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Kevin</span> <span class="surname">Atkinson</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Sinisa</span> <span class="surname">Milivojevic</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Monty</span> <span class="surname">Widenius</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Warren</span> <span class="surname">Young</span></h3></div></div></div><div><p class="copyright">Copyright  1998-2001, 2005-2008 Kevin Atkinson (original author), MySQL AB, Educational Technology Resources</p></div><div><p class="pubdate">February29,2008</p></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="index.html#intro">1. Introduction</a></span></dt><dd><dl><dt><span class="sect2"><a href="index.html#history">1.1. A Brief History of MySQL++</a></span></dt><dt><span class="sect2"><a href="index.html#asking-questions">1.2. If You Have Questions...</a></span></dt></dl></dd><dt><span class="sect1"><a href="overview.html">2. Overview</a></span></dt><dd><dl><dt><span class="sect2"><a href="overview.html#Connection">2.1. The Connection Object</a></span></dt><dt><span class="sect2"><a href="overview.html#Query">2.2. The Query Object</a></span></dt><dt><span class="sect2"><a href="overview.html#Result">2.3. Result Sets</a></span></dt><dt><span class="sect2"><a href="overview.html#exceptions-intro">2.4. Exceptions</a></span></dt></dl></dd><dt><span class="sect1"><a href="tutorial.html">3. Tutorial</a></span></dt><dd><dl><dt><span class="sect2"><a href="tutorial.html#examples">3.1. Running the Examples</a></span></dt><dt><span class="sect2"><a href="tutorial.html#simple">3.2. A Simple Example</a></span></dt><dt><span class="sect2"><a href="tutorial.html#simple2">3.3. A More Complicated Example</a></span></dt><dt><span class="sect2"><a href="tutorial.html#headers">3.4. #including MySQL++ Headers</a></span></dt><dt><span class="sect2"><a href="tutorial.html#exceptions">3.5. Exceptions</a></span></dt><dt><span class="sect2"><a href="tutorial.html#qescape">3.6. Quoting and Escaping</a></span></dt><dt><span class="sect2"><a href="tutorial.html#ssqlsintro">3.7. Specialized SQL Structures</a></span></dt><dt><span class="sect2"><a href="tutorial.html#sql_types">3.8. C++ Equivalents of SQL Column Types</a></span></dt><dt><span class="sect2"><a href="tutorial.html#sql-null">3.9. Handling SQL Nulls</a></span></dt><dt><span class="sect2"><a href="tutorial.html#Transaction">3.10. Using Transactions</a></span></dt><dt><span class="sect2"><a href="tutorial.html#querytypes">3.11. Which Query Type to Use?</a></span></dt><dt><span class="sect2"><a href="tutorial.html#store_if">3.12. Conditional Result Row Handling</a></span></dt><dt><span class="sect2"><a href="tutorial.html#for_each">3.13. Executing Code for Each Row In a Result Set</a></span></dt><dt><span class="sect2"><a href="tutorial.html#connopts">3.14. Connection Options</a></span></dt><dt><span class="sect2"><a href="tutorial.html#fieldinf">3.15. Getting Field Meta-Information</a></span></dt><dt><span class="sect2"><a href="tutorial.html#string-types">3.16. MySQL++&#8217;s Special String Types</a></span></dt><dt><span class="sect2"><a href="tutorial.html#blob">3.17. Dealing with Binary Data</a></span></dt><dt><span class="sect2"><a href="tutorial.html#concurrentqueries">3.18. Concurrent Queries on a Connection</a></span></dt></dl></dd><dt><span class="sect1"><a href="tquery.html">4. Template Queries</a></span></dt><dd><dl><dt><span class="sect2"><a href="tquery.html#tquery-setup">4.1. Setting up Template Queries</a></span></dt><dt><span class="sect2"><a href="tquery.html#tquery-parms">4.2. Setting the Parameters at Execution Time</a></span></dt><dt><span class="sect2"><a href="tquery.html#tquery-defaults">4.3. Default Parameters</a></span></dt><dt><span class="sect2"><a href="tquery.html#tquery-errors">4.4. Error Handling</a></span></dt></dl></dd><dt><span class="sect1"><a href="ssqls.html">5. Specialized SQL Structures</a></span></dt><dd><dl><dt><span class="sect2"><a href="ssqls.html#sql_create">5.1. sql_create</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-compare-init">5.2. SSQLS Comparison and Initialization</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-extra-features">5.3. Additional Features of Specialized SQL
    Structures</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-in-header">5.4. Using an SSQLS in Multiple Modules</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-internals">5.5. Harnessing SSQLS Internals</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-field-names">5.6. Having Different Field Names in C++ and SQL</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-pretty">5.7. Expanding SSQLS Macros</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-customization">5.8. Customizing the SSQLS Mechanism</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-blob">5.9. SSQLS and BLOB Columns</a></span></dt><dt><span class="sect2"><a href="ssqls.html#ssqls-vc2003">5.10. SSQLS and Visual C++ 2003</a></span></dt></dl></dd><dt><span class="sect1"><a href="unicode.html">6. Using Unicode with MySQL++</a></span></dt><dd><dl><dt><span class="sect2"><a href="unicode.html#unicode-history">6.1. A Short History of Unicode</a></span></dt><dt><span class="sect2"><a href="unicode.html#unicode-unix">6.2. Unicode on Unixy Systems</a></span></dt><dt><span class="sect2"><a href="unicode.html#unicode-windows">6.3. Unicode on Windows</a></span></dt><dt><span class="sect2"><a href="unicode.html#unicode-refs">6.4. For More Information</a></span></dt></dl></dd><dt><span class="sect1"><a href="threads.html">7. Using MySQL++ in a Multithreaded Program</a></span></dt><dd><dl><dt><span class="sect2"><a href="threads.html#thread-build">7.1. Build Issues</a></span></dt><dt><span class="sect2"><a href="threads.html#thread-conn-mgmt">7.2. Connection Management</a></span></dt><dt><span class="sect2"><a href="threads.html#thread-helpers">7.3. Helper Functions</a></span></dt><dt><span class="sect2"><a href="threads.html#thread-data-sharing">7.4. Sharing MySQL++ Data Structures</a></span></dt></dl></dd><dt><span class="sect1"><a href="configuration.html">8. Configuring MySQL++</a></span></dt><dd><dl><dt><span class="sect2"><a href="configuration.html#mysql-loc">8.1. The Location of the MySQL Development Files</a></span></dt><dt><span class="sect2"><a href="configuration.html#max-columns">8.2. The Maximum Number of Columns Allowed</a></span></dt><dt><span class="sect2"><a href="configuration.html#buried-headers">8.3. Buried MySQL C API Headers</a></span></dt><dt><span class="sect2"><a href="configuration.html#c99">8.4. Building MySQL++ on Systems Without Complete C99
    Support</a></span></dt></dl></dd><dt><span class="sect1"><a href="breakages.html">9. Incompatible Library Changes</a></span></dt><dd><dl><dt><span class="sect2"><a href="breakages.html#api-changes">9.1. API Changes</a></span></dt><dt><span class="sect2"><a href="breakages.html#abi-changes">9.2. ABI Changes</a></span></dt></dl></dd><dt><span class="sect1"><a href="licenses.html">10. Licensing</a></span></dt><dd><dl><dt><span class="sect2"><a href="licenses.html#lgpl">10.1. GNU Lesser General Public License</a></span></dt><dt><span class="sect2"><a href="licenses.html#userman-license">10.2. MySQL++ User Manual License</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="intro"></a>1.Introduction</h2></div></div></div><p>MySQL++ is a powerful C++ wrapper for MySQL&#8217;s C API.  Its
  purpose is to make working with queries as easy as working with STL
  containers.</p><p>The latest version of MySQL++ can be found at <a href="http://tangentsoft.net/mysql++/" target="_top">the official web
  site</a>.</p><p>Support for MySQL++ can be had on <a href="http://lists.mysql.com/plusplus" target="_top">the mailing list</a>. That
  page hosts the mailing list archives, and tells you how you can
  subscribe.</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="history"></a>1.1.A Brief History of MySQL++</h3></div></div></div><p>MySQL++ was created in 1998 by Kevin Atkinson. It started out
    MySQL-specific, but there were early efforts to try and make it
    database-independent, and call it SQL++. This is where the old
    library name &#8220;sqlplus&#8221; came from. This is also why the
    old versions prefixed some class names with &#8220;Mysql&#8221; but
    not others: the others were supposed to be the database-independent
    parts.</p><p>Then in 1999, Sinisa Milivojevic unofficially took over
    maintenance of the library, releasing versions 1.0 and 1.1. (All of
    Kevin&#8217;s releases were pre-1.0 point releases.) Kevin gave over
    maintenance to Sinisa officially with 1.2, and ceased to have any
    involvement with the library&#8217;s maintenance. Sinisa went on to
    maintain the library through 1.7.9, released in mid-2001. Since
    Sinisa is an employee of <a href="http://www.mysql.com/" target="_top">MySQL
    AB</a>, it seems to be during this time that the dream of
    multiple-database compatibility died.</p><p>With version 1.7.9, MySQL++ went into a period of stasis,
    lasting over three years. During this time, Sinisa ran the
    MySQL++ mailing list and supported its users, but made no new
    releases. There were many patches submitted during this period,
    some of which were ignored, others which were just put on the
    MySQL++ web site for people to try. A lot of these patches were
    mutually-incompatible, and not all of them gave a fully-functional
    copy of MySQL++.</p><p>In early August of 2004, the current maintainer (Warren
    Young) got fed up with this situation and took over. He released
    1.7.10 later that month.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="asking-questions"></a>1.2.If You Have Questions...</h3></div></div></div><p>If you want to email someone to ask questions about
    this library, we greatly prefer that you send mail to the
    <a href="http://lists.mysql.com/plusplus" target="_top">MySQL++ mailing
    list</a>. The mailing list is archived, so if you have
    questions, do a search to see if the question has been asked
    before.</p><p>You may find people&#8217;s individual email addresses in various
    files within the MySQL++ distribution. Please do not send mail
    to them unless you are sending something that is inherently
    personal. Not all of the principal developers of MySQL++ are still
    active in its development; those who have dropped out have no wish
    to be bugged about MySQL++. Those of us still active in MySQL++
    development monitor the mailing list, so you aren&#8217;t getting any
    extra &#8220;coverage&#8221; by sending messages to additional
    email addresses.</p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"></td><td width="20%" align="center"></td><td width="40%" align="right"><a accesskey="n" href="overview.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"></td><td width="20%" align="center"></td><td width="40%" align="right" valign="top">2.Overview</td></tr></table></div></body></html>