【五】ODB - C++ 表單列函式count、min、max(V1.0)
原文地址:http://www.codesynthesis.com/products/odb/doc/manual.xhtml#2.7
表單列函式主要作用:是用C++類的成員物件來盛放表單的列函式結果。
使用方式:
1 在模板標頭檔案中定義盛放結果的結構體,這個結構體的定義完全隸屬於person類,所以放到person類的標頭檔案中定義最好。
#pragma db view object(person)
struct person_stat
{
#pragma db column("count(" + person::id_ + ")")
std::size_t count;
#pragma db column("min(" + person::age_ + ")")
unsigned short min_age;
#pragma db column("max(" + person::age_ + ")")
unsigned short max_age;
};
2 用odb命令列重新編譯person.hxx標頭檔案,生成新的-odb.hxx和-odb.cxx檔案,放到專案中使用。
3 呼叫原始碼:
#include <memory> // std::auto_ptr
#include <iostream>
#include <odb/database.hxx>
#include <odb/transaction.hxx>
#include <odb/mysql/database.hxx>
#include "person.hxx"
#include "person-odb.hxx"
using namespace std;
using namespace odb::core;
int
main (int argc, char* argv[])
{
try
{
auto_ptr<odb::database> db (
new odb::mysql::database (
"root" // database login name
,"123456" // database password
,"collect" // database name
,"localhost"
,13306
));
{
transaction t (db->begin ());
person_stat ps (db->query_value<person_stat> ());
cout << "count : " << ps.count << endl
<< "min age: " << ps.min_age << endl
<< "max age: " << ps.max_age << endl;
t.commit ();
}
}
catch (const odb::exception& e)
{
cerr << e.what () << endl;
return 1;
}
cin.get();
}
相關文章
- laravel mysql聚合函式使用方法(count,sum,max,min,avg)LaravelMySql函式
- ejbql有無max,count等函式???函式
- 【二】ODB - C++ 單表插入(V1.02)C++
- 【四】ODB - C++ 單表更新(V1.11)C++
- python奇技淫巧——max/min函式的用法Python函式
- 【三】ODB - C++ 單表查詢(V1.02)C++
- golang count 單字元 字串 統計函式Golang字元字串函式
- MAX or MIN of Indexed ColumnIndex
- min(), max()和indexIndex
- std::count 函式函式
- 解析Count函式函式
- 【Analytic】分析函式之MIN函式函式
- FBI? MAX? INDEX FULL SCAN (MIN/MAX)?Index
- 包含min函式的棧函式
- Min-Max 容斥
- 【Analytic】分析函式之COUNT函式函式
- c++虛擬函式表C++函式
- min ? max ? 執行計劃?
- count 函式原始碼分析函式原始碼
- mysql count函式說明MySql函式
- 【Analytic】分析函式之MAX函式函式
- C++ 虛擬函式表剖析C++函式
- PHP 每日一函式 — 字串函式 count_chars ()PHP函式字串
- 設計包含min函式的棧函式
- JavaScript 表單、物件、函式JavaScript物件函式
- 深入C++成員函式及虛擬函式表C++函式
- ORACLE單行函式與多行函式之五:轉換函式示例Oracle函式
- min ? max ? 執行計劃? (續)
- 關於count函式的理解函式
- 淺談php count()函式方法PHP函式
- 劍指offer——包含min函式的棧函式
- 【劍指offer】包含min函式的棧函式
- min_element 函式的 STL 範例函式
- C++ main函式命令列引數使用C++AI函式命令列
- python的小技巧之min,maxPython
- Oracle Max()/Min()類的效能優化Oracle優化
- MySQL中count(*)函式原理詳解MySql函式
- PHP原始碼閱讀:count函式PHP原始碼函式