全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 ページ
recordset.h
1 #ifndef BZS_DB_PROTOCOL_TDAP_CLIENT_RECORDSET_H
2 #define BZS_DB_PROTOCOL_TDAP_CLIENT_RECORDSET_H
3 /*=================================================================
4  Copyright (C) 2014 BizStation Corp All rights reserved.
5 
6  This program is free software; you can redistribute it and/or
7  modify it under the terms of the GNU General Public License
8  as published by the Free Software Foundation; either version 2
9  of the License, or (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with this program; if not, write to the Free Software
18  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
19  02111-1307, USA.
20 =================================================================*/
21 #include "groupQuery.h"
22 #ifdef _DEBUG
23  #include <iostream>
24  #include <bzs/env/tstring.h>
25 #endif
26 
27 namespace bzs
28 {
29 namespace db
30 {
31 namespace protocol
32 {
33 namespace tdap
34 {
35 namespace client
36 {
37 
38 class DLLLIB recordset
39 {
40 
41  friend class activeTable;
42  class recordsetImple* m_imple;
43 
44 public:
45  typedef std::vector<row_ptr>::iterator iterator;
46 
47  recordset();
48  recordset(const recordset& r);
49  recordset& operator=(const recordset& r);
50  ~recordset();
51  recordset* clone() const;
52  row& operator[](size_t index) const;
53  row& first() const;
54  row& last() const;
55  size_t size() const;
56  size_t count() const;
57  void clearRecords();
58  const fielddefs* fieldDefs() const;
59  void clear();
60  recordset& top(recordset& c, int n) const;
61  iterator begin();
62  iterator end();
63  iterator erase(size_t index);
64  iterator erase(const iterator& it);
65  void removeField(int index);
66  recordset& matchBy(recordsetQuery& rq);
67  recordset& groupBy(groupQuery& gq);
68  recordset& orderBy(const _TCHAR* name1, const _TCHAR* name2 = NULL,
69  const _TCHAR* name3 = NULL, const _TCHAR* name4 = NULL,
70  const _TCHAR* name5 = NULL, const _TCHAR* name6 = NULL,
71  const _TCHAR* name7 = NULL, const _TCHAR* name8 = NULL);
72  recordset& orderBy(const sortFields& orders);
73  recordset& reverse();
74  recordset& join(const recordset& rs, recordsetQuery& rq);
75  recordset& outerJoin(const recordset& rs, recordsetQuery& rq);
76  void reserve(size_t size);
77  void appendField(const _TCHAR* name, int type, short len);
78  void appendField(const fielddef& fd);
79  recordset& operator+=(const recordset& r);
80  void release();
81  static recordset* create();
82 
83 #ifdef _DEBUG
84  void dump();
85  void dump(std::tostream& os);
86 
87  /*
88  Output to file.
89 
90  #include <fstream>
91  std::locale::global(std::locale("japanese"));
92  std::wofstream ost("temp.txt");
93  rs.dump(ost);
94  */
95 
96 #endif
97 };
98 
99 } // namespace client
100 } // namespace tdap
101 } // namespace protocol
102 } // namespace db
103 } // namespace bzs
104 
105 #endif // BZS_DB_PROTOCOL_TDAP_CLIENT_RECORDSET_H
activeTableの読み取りクエリー 結果セットクラス
Definition: recordset.h:38
グルーピング Firstクラス
Definition: groupQuery.h:362
std::vector< row_ptr >::iterator iterator
Definition: recordset.h:45
フィールド定義構造体
Definition: tdapSchema.h:419
グルーピング条件を指定するクラス
Definition: groupQuery.h:248
fielddef のコレクションクラス
Definition: field.h:74
recordset のソートパラメータコレクションクラス
Definition: groupQuery.h:84
グルーピング レコード数カウンター
Definition: groupQuery.h:287
recordset フィルタリングクエリー
Definition: groupQuery.h:107
フィールドコレクションのベースクラス
Definition: fields.h:123
グルーピング Lastクラス
Definition: groupQuery.h:347
recordset 用テーブルアクセスクラス
Definition: activeTable.h:80

Transactd SDK 2018年07月31日(火) 19時40分22秒 doxygen