VSQLite++  0.3
include/sqlite/query.hpp
Go to the documentation of this file.
00001 /*##############################################################################
00002  VSQLite++ - virtuosic bytes SQLite3 C++ wrapper
00003 
00004  Copyright (c) 2006-2014 Vinzenz Feenstra vinzenz.feenstra@gmail.com
00005  All rights reserved.
00006 
00007  Redistribution and use in source and binary forms, with or without modification,
00008  are permitted provided that the following conditions are met:
00009 
00010  * Redistributions of source code must retain the above copyright notice,
00011    this list of conditions and the following disclaimer.
00012  * Redistributions in binary form must reproduce the above copyright notice,
00013    this list of conditions and the following disclaimer in the documentation
00014    and/or other materials provided with the distribution.
00015  * Neither the name of virtuosic bytes nor the names of its contributors may
00016    be used to endorse or promote products derived from this software without
00017    specific prior written permission.
00018 
00019  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00020  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00021  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00022  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
00023  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
00024  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
00025  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00026  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
00027  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
00028  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00029  POSSIBILITY OF SUCH DAMAGE.
00030 
00031 ##############################################################################*/
00032 #ifndef GUARD_SQLITE_QUERY_HPP_INCLUDED
00033 #define GUARD_SQLITE_QUERY_HPP_INCLUDED
00034 
00035 #include <boost/shared_ptr.hpp>
00036 #include <sqlite/command.hpp>
00037 #include <sqlite/result.hpp>
00038 
00039 namespace sqlite{
00040 
00044     struct query : command {
00049         query(connection & con, std::string const & sql);
00050 
00054         virtual ~query();
00055 
00059         result_type emit_result();
00060 
00064         result_type get_result();
00065     private:
00066         friend struct result;
00067         void access_check();
00068         bool step();
00069     };
00070 }
00071 
00072 #endif //GUARD_SQLITE_QUERY_HPP_INCLUDED
00073 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends