TNB Library
クラス | 公開メンバ関数 | 限定公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
CTinySqlAccessor::CPreparedStatement クラス

簡易 SQL アクセサ用プリペアドステートメント. [詳解]

#include <TnbTinySqlAccessor.h>

+ CTinySqlAccessor::CPreparedStatement の継承関係図

公開メンバ関数

virtual bool CloseCursor (void)
 [設定] クローズカーソル. [詳解]
 
 CPreparedStatement (const CPreparedStatement &other)
 コピーコンストラクタ. [詳解]
 
 CPreparedStatement (SQLHDBC hDbc, LPCTSTR lpszSql, DWORD tm=0)
 コンストラクタ. [詳解]
 
void Destroy (void)
 [設定] 使用不可. [詳解]
 
bool Execute (void)
 [設定] 実行. [詳解]
 
bool ExecuteDirect (LPCTSTR lpszSql)
 [設定] 実行. [詳解]
 
CReturnCode GetLastReturnCode (void) const
 [取得] 戻り値詳細取得. [詳解]
 
DWORD GetQueryTimeout (void)
 [取得] タイムアウト取得 [詳解]
 
CResultSet GetResultSet (void) const
 [取得] 結果セット取得. [詳解]
 
bool IsValid (void)
 [確認] 有効確認. [詳解]
 
CPreparedStatementoperator= (const CPreparedStatement &other)
 コピーオペレータ. [詳解]
 
bool SetBinary (INDEX parameterIndex, size_t size, LPCVOID P)
 [設定] バイナリ設定. [詳解]
 
bool SetDouble (INDEX parameterIndex, double value)
 [設定] double 値設定. [詳解]
 
bool SetInt (INDEX parameterIndex, int value)
 [設定] int 値設定. [詳解]
 
bool SetNull (INDEX parameterIndex)
 [設定] NULL 値設定. [詳解]
 
bool SetString (INDEX parameterIndex, LPCSTR lpsz)
 [設定] 文字列設定. [詳解]
 
bool SetString (INDEX parameterIndex, LPCWSTR lpsz)
 [設定] 文字列設定. [詳解]
 
bool SetTime (INDEX parameterIndex, const SYSTEMTIME &time)
 [設定] タイムスタンプ設定. [詳解]
 

限定公開メンバ関数

bool m_Init (void)
 [確認] 準備処理 [詳解]
 
bool m_Rst (SQLRETURN rc=0)
 [確認] 戻り値処理 [詳解]
 

限定公開変数類

SQLHDBC m_hDbc
 DBC ハンドル [詳解]
 
CStmtHandle m_hStmt
 ステートメントハンドル [詳解]
 
CReturnCode m_lastReturnCode
 最後の戻り値 [詳解]
 
DWORD m_timeout
 タイムアウト(s) [詳解]
 

詳解

簡易 SQL アクセサ用プリペアドステートメント.

CTinySqlAccessor::PreparedStatement() の戻り値で作成できます(直接インスタンスを作成しても意味がありません)。
使用前に、 IsValid() で有効なインスタンスになっているか、確認してください。
覚え書き
コピーすると、同じデータベースへの接続を持つ新しいステートメントになります。 CTinySqlAccessor::PreparedStatement() で渡した SQL は引き継がれます。
参照
CTinySqlAccessor
todo:
DEFAULT のパラメータ指定するための、 SetDefault() が未実装です。 SQL に 'DEFAULT' 表記する必要があります。
必要ファイル
TnbTinySqlAccessor.h
日付
11/05/16 新規作成
12/01/26 MSSQL 2008 を target に SetNull() 、実装。
12/10/29 SetInt() で short に丸められるバグを修正。

TnbTinySqlAccessor.h1355 行目に定義があります。

構築子と解体子

◆ CPreparedStatement() [1/2]

CPreparedStatement ( SQLHDBC  hDbc,
LPCTSTR  lpszSql,
DWORD  tm = 0 
)

コンストラクタ.

引数
hDbcコネクションハンドル
lpszSqlSQL 文
tmタイムアウト(s)

TnbTinySqlAccessor.h1366 行目に定義があります。

◆ CPreparedStatement() [2/2]

コピーコンストラクタ.

引数
otherコピー元

TnbTinySqlAccessor.h1374 行目に定義があります。

関数詳解

◆ CloseCursor()

virtual bool CloseCursor ( void  )
virtual

[設定] クローズカーソル.

戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

CTinySqlAccessor::CStatementを再実装しています。

TnbTinySqlAccessor.h1539 行目に定義があります。

◆ Destroy()

void Destroy ( void  )
inherited

[設定] 使用不可.

保持しているハンドルを破棄します。

TnbTinySqlAccessor.h1226 行目に定義があります。

◆ Execute()

bool Execute ( void  )

[設定] 実行.

SQL を実行します。結果セットは GetResultSet() で取得できます。

戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1411 行目に定義があります。

◆ ExecuteDirect()

bool ExecuteDirect ( LPCTSTR  lpszSql)

[設定] 実行.

指定の SQL を実行します。結果セットは GetResultSet() で取得できます。

覚え書き
通常、使いません。
引数
lpszSqlSQL 文
戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1400 行目に定義があります。

◆ GetLastReturnCode()

CReturnCode GetLastReturnCode ( void  ) const
inherited

[取得] 戻り値詳細取得.

戻り値
戻り値.

TnbTinySqlAccessor.h1261 行目に定義があります。

◆ GetQueryTimeout()

DWORD GetQueryTimeout ( void  )
inherited

[取得] タイムアウト取得

戻り値
DWORD_MAX取得エラー
上記以外取得成功。値はQUERYタイムアウト値(s)。

TnbTinySqlAccessor.h1271 行目に定義があります。

◆ GetResultSet()

CResultSet GetResultSet ( void  ) const
inherited

[取得] 結果セット取得.

Execute() の結果を管理している CResultSet を返します。

戻り値
結果セット。 CResultSet::IsValid() で正しい情報を持っているか、確認してください。

TnbTinySqlAccessor.h1252 行目に定義があります。

◆ IsValid()

bool IsValid ( void  )
inherited

[確認] 有効確認.

戻り値
true有効なインスタンス。
false否。

TnbTinySqlAccessor.h1216 行目に定義があります。

◆ m_Init()

bool m_Init ( void  )
protectedinherited

[確認] 準備処理

戻り値
true成功
false失敗

TnbTinySqlAccessor.h1297 行目に定義があります。

◆ m_Rst()

bool m_Rst ( SQLRETURN  rc = 0)
protectedinherited

[確認] 戻り値処理

引数
rcSQL APIの戻り値
戻り値
true成功
false失敗

TnbTinySqlAccessor.h1319 行目に定義があります。

◆ operator=()

CPreparedStatement & operator= ( const CPreparedStatement other)

コピーオペレータ.

引数
otherコピー元
戻り値
自分の参照

TnbTinySqlAccessor.h1383 行目に定義があります。

◆ SetBinary()

bool SetBinary ( INDEX  parameterIndex,
size_t  size,
LPCVOID  P 
)

[設定] バイナリ設定.

引数
parameterIndexパラメタインデックス。最初のパラメタは1、二番目が2になります。
sizeバイナリデータ長さ.(long で表現できる長さまで)
Pバイナリデータ
戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1464 行目に定義があります。

◆ SetDouble()

bool SetDouble ( INDEX  parameterIndex,
double  value 
)

[設定] double 値設定.

引数
parameterIndexパラメタインデックス。最初のパラメタは1、二番目が2になります。
value
戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1451 行目に定義があります。

◆ SetInt()

bool SetInt ( INDEX  parameterIndex,
int  value 
)

[設定] int 値設定.

引数
parameterIndexパラメタインデックス。最初のパラメタは1、二番目が2になります。
value
戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1439 行目に定義があります。

◆ SetNull()

bool SetNull ( INDEX  parameterIndex)

[設定] NULL 値設定.

引数
parameterIndexパラメタインデックス。最初のパラメタは1、二番目が2になります。
戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1427 行目に定義があります。

◆ SetString() [1/2]

bool SetString ( INDEX  parameterIndex,
LPCSTR  lpsz 
)

[設定] 文字列設定.

引数
parameterIndexパラメタインデックス。最初のパラメタは1、二番目が2になります。
lpsz文字列。(long で表現できる長さまで)
戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1481 行目に定義があります。

◆ SetString() [2/2]

bool SetString ( INDEX  parameterIndex,
LPCWSTR  lpsz 
)

[設定] 文字列設定.

覚え書き
文字列長が0の場合、 NULL を設定します。
引数
parameterIndexパラメタインデックス。最初のパラメタは1、二番目が2になります。
lpsz文字列。(long で表現できる長さまで)
戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1499 行目に定義があります。

◆ SetTime()

bool SetTime ( INDEX  parameterIndex,
const SYSTEMTIME time 
)

[設定] タイムスタンプ設定.

引数
parameterIndexパラメタインデックス。最初のパラメタは1、二番目が2になります。
time時間
戻り値
true成功。詳細は GetLastReturnCode() で得られます。
false失敗。詳細は GetLastReturnCode() で得られます。

TnbTinySqlAccessor.h1516 行目に定義があります。

メンバ詳解

◆ m_hDbc

SQLHDBC m_hDbc
protectedinherited

DBC ハンドル

TnbTinySqlAccessor.h1324 行目に定義があります。

◆ m_hStmt

CStmtHandle m_hStmt
protectedinherited

ステートメントハンドル

TnbTinySqlAccessor.h1325 行目に定義があります。

◆ m_lastReturnCode

CReturnCode m_lastReturnCode
protectedinherited

最後の戻り値

TnbTinySqlAccessor.h1327 行目に定義があります。

◆ m_timeout

DWORD m_timeout
protectedinherited

タイムアウト(s)

TnbTinySqlAccessor.h1326 行目に定義があります。