ODB庫安裝使用簡介

2021-07-16 23:19:59 字數 1998 閱讀 4822

編譯libodb-vc10.sln

編譯libodb-sqlite-vc10.sln

注意

編譯example專案的access-sqlite-vc10工程

#ifndef person_hxx

#define person_hxx

#include

#include

#pragma db object

class person

person (const

std::string& email,

const

std::string& first,

const

std::string& middle,

const

std::string& last,

unsigned

short age)

: email_ (email), first_ (first), middle_ (middle), last_ (last)

// 標準訪問器和修改器能夠被odb發現使用

const

std::string& email () const

void email (const

std::string& email)

const

std::string& getfirst () const

std::string& setfirst ()

const

std::string& g_middle () const

void s_middle (const

std::string& middle)

const

char* last () const

void last (const

char* last)

unsigned

short age () const

void age (unsigned

short age)

private:

#pragma db id //自動生成主鍵

std::string email_;

std::string first_;

#pragma db get(g_middle) set(s_middle)

std::string middle_;

#pragma db get(std::string (this.last ())) set(last ((?).c_str ()))

std::string last_;

#pragma db transient

struct

data_;

#pragma db member(age) virtual(unsigned short)

};#endif // person_hxx

main函式

#include // std::auto_ptr

#include

#include

#include

#include "database.hxx" // create_database

#include "person.hxx"

#include "person-odb.hxx"

using

namespace

std;

using

namespace odb::core;

intmain (int argc, char* argv)

} catch (const odb::exception& e)

}

vs會自動執行odb命令,來生成對應的person-odb.ixx,person-odb.hxx,person-odb.cxx;如果不能成功呼叫odb,可以參見4。

[1].

[2].

[3].

[4].

odb訪問mysql資料庫(odb的簡單用法2)

1.odb事務 odb事務有如下介面 namespace odb 事務脫離作用域的時候會被自動回滾。如果我們試圖提交或者回滾乙個已經結束的事務會丟擲異常,odb transaction already finalized。我們要盡量在事務內部宣告變數,以避免事務回滾時應用程式和資料庫中物件不一致的問...

Homebrew 安裝使用簡介

homebre簡稱brew,它其實就是mac osx上的一款軟體包的管理工具。類似於小紅帽 red hat 的yun,或者是烏班圖 ubuntu 的apt get,你可以在mac 終端使用brew命令去搜尋 安裝 解除安裝軟體。homebrew的安裝很簡單,只需要在終端鍵入下面這條命令就行了 rub...

rabbitmq安裝和使用簡介

apt install rabbitmq server 開啟rabbitmq server service rabbitmq server restart rabbitmq自帶了很多外掛程式,都放在 usr lib rabbitmq lib rabbitmq server 3.5.7 plugins...