Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Mapscape/sqlpp11-connector-sqlite3

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sqlpp11-connector-sqlite

A C++ wrapper for sqlite3 meant to be used in combination with sqlpp11.

Sample Code:

See for instance test/SampleTest.cpp

namespace sql = sqlpp::sqlite3;
int main()
{
    auto config = std::make_shared<sql::connection_config>();
    config->path_to_database = ":memory:";
    config->flags = SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE;
    config->debug = true;

    sql::connection db(config);
    std::cerr << __FILE__ << ": " << __LINE__ << std::endl;
    db.execute("CREATE TABLE tab_sample (\
        alpha bigint(20) DEFAULT NULL,\
        beta bool DEFAULT NULL,\
        gamma varchar(255) DEFAULT NULL\
        )");

    TabSample tab;
    // explicit all_of(tab)
    for(const auto& row : db.run(select(all_of(tab)).from(tab).where(true)))
    {
        int64_t alpha = row.alpha;
        bool beta = row.beta;
        std::string gamma = row.gamma;
    };

Requirements:

Compiler: sqlpp11-connector-sqlite3 makes use of C++11 and requires a recent compiler and STL. The following compilers are known to compile the test programs:

  • clang-3.2 on Ubuntu-12.4
  • g++-4.8 on Ubuntu-12.4

C++ SQL Layer: sqlpp11-connector-sqlite3 is meant to be used with sqlpp11 (https://github.com/rbock/sqlpp11).

sqlite3: libsqlite3, version 3.7.11 or later is required to use multi-row insert. Older versions (e.g. 3.7.9) work fine otherwise.

About

A C++ wrapper for sqlite3 meant to be used in combination with sqlpp11.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 93.8%
  • CMake 4.4%
  • C 1.8%