簡易 MS SQL アクセサクラス
[詳解]
#include <TnbTinyMsSqlAccessor.h>
|
typedef TNB::CPointerHandleBaseT< SQLHSTMT, TPhFreeStmtHandle > | CStmtHandle |
| 簡易 SQL アクセサ用 STMT ハンドルハンドル. [詳解]
|
|
enum | EType {
Type_Null = SQL_TYPE_NULL
, Type_Binary = SQL_BINARY
, Type_AsciiString = SQL_CHAR
, Type_UnicodeString = SQL_WCHAR
,
Type_DoubleFloat = SQL_DOUBLE
, Type_Float = SQL_FLOAT
, Type_Integer = SQL_INTEGER
, Type_Short = SQL_SMALLINT
,
Type_TimeStamp = SQL_TYPE_TIMESTAMP
, Type_Bit = SQL_BIT
} |
| 値種類 [詳解]
|
|
|
static bool | AttachDataFile (LPCTSTR lpszManageName, LPCTSTR lpszMdfPath, LPCTSTR lpszDriver, LPCTSTR lpszServer=NULL) |
| [設定] データファイルのアタッチ. [詳解]
|
|
static bool | BackupDataFile (LPCTSTR lpszBackupFileName, LPCTSTR lpszManageName, LPCTSTR lpszServer=NULL) |
| [設定] データファイルのバックアップ. [詳解]
|
|
static bool | DetachDataFile (LPCTSTR lpszManageName, LPCTSTR lpszDriver, LPCTSTR lpszServer=NULL) |
| [設定] データファイルのデタッチ. [詳解]
|
|
static SQLTCHAR * | GetSqlChar (CStr &_s, size_t len=0) |
| [変換] 文字列ポインタ取得. [詳解]
|
|
static bool | IsDataFileAttached (LPCTSTR lpszManageName, LPCTSTR lpszDriver) |
| [確認] データファイルのアタッチ済み?. [詳解]
|
|
static bool | RestoreDataFile (LPCTSTR lpszBackupFileName, LPCTSTR lpszManageName, LPCTSTR lpszServer=NULL) |
| [設定] データファイルのリストア. [詳解]
|
|
static CStr | SystemTimeToString (const SYSTEMTIME &time) |
| [変換] 時間文字列化. [詳解]
|
|
簡易 MS SQL アクセサクラス
AttachDataFile() を使ってアタッチした MDF ファイルに接続し、 SQL を実行することが出来ます。
戻り値を取得することが出来ます。
- アタッチ例
static bool AttachDataFile(LPCTSTR lpszManageName, LPCTSTR lpszMdfPath, LPCTSTR lpszDriver, LPCTSTR lpszServer=NULL)
[設定] データファイルのアタッチ.
- デタッチ例
static bool DetachDataFile(LPCTSTR lpszManageName, LPCTSTR lpszDriver, LPCTSTR lpszServer=NULL)
[設定] データファイルのデタッチ.
- 使用例
CTinyMsSqlAccessor sql;
bool r = sql.ConnectDataFile("XYZ");
CTinyMsSqlAccessor::CReturnCode rc = sql.GetLastReturnCode();
if ( r ) {
;
}
TRACE1("ret = %s\n", rc.GetErrorString());
return;
- 必要ファイル
- TnbTinyMsSqlAccessor.h
- 日付
- 12/01/20 新規作成
-
12/01/26 AttachDataFile() のエラーチェックを強化。
TnbTinyMsSqlAccessor.h の 189 行目に定義があります。
◆ EType
値種類
列挙値 |
---|
Type_Null | 値なし
|
Type_Binary | バイナリ
|
Type_AsciiString | ASCII文字列
|
Type_UnicodeString | UNICODE文字列
|
Type_DoubleFloat | 64bit double float 実数
|
Type_Float | 32bit float 実数
|
Type_Integer | 32bit signed 整数
|
Type_Short | 16bit signed 整数
|
Type_TimeStamp | タイムスタンプ
|
Type_Bit | 1bit 値
|
TnbTinySqlAccessor.h の 145 行目に定義があります。
◆ AttachDataFile()
static bool AttachDataFile |
( |
LPCTSTR |
lpszManageName, |
|
|
LPCTSTR |
lpszMdfPath, |
|
|
LPCTSTR |
lpszDriver, |
|
|
LPCTSTR |
lpszServer = NULL |
|
) |
| |
|
static |
[設定] データファイルのアタッチ.
指定のデータファイルを指定の管理名でデータベースに登録します。
- 覚え書き
- 一度アタッチすると、デタッチするまで、残ります。
- 注意
- sqlcmd の応答文字が不明のため、本メソッド実行中にダイアログが出て、ユーザに是非を判断させる可能性があります。
- 引数
-
lpszManageName | 管理名。 |
lpszMdfPath | MDF ファイルのパス。 |
lpszDriver | ドライバー名。 |
lpszServer | サーバー名。省略すると .¥SQLEXPRESS になります。 |
- 戻り値
-
TnbTinyMsSqlAccessor.h の 223 行目に定義があります。
◆ BackupDataFile()
static bool BackupDataFile |
( |
LPCTSTR |
lpszBackupFileName, |
|
|
LPCTSTR |
lpszManageName, |
|
|
LPCTSTR |
lpszServer = NULL |
|
) |
| |
|
static |
[設定] データファイルのバックアップ.
- 引数
-
lpszBackupFileName | バックアップファイル名。 |
lpszManageName | 管理名。 |
lpszServer | サーバー名。省略すると .¥SQLEXPRESS になります。 |
- 戻り値
-
TnbTinyMsSqlAccessor.h の 311 行目に定義があります。
◆ Commit()
◆ Connect() [1/3]
bool Connect |
( |
LPCTSTR |
lpszConnect, |
|
|
SQLUSMALLINT |
options = SQL_DRIVER_NOPROMPT |
|
) |
| |
|
inherited |
◆ Connect() [2/3]
bool Connect |
( |
LPCTSTR |
lpszDataBaseName, |
|
|
LPCTSTR |
lpszUserName, |
|
|
LPCTSTR |
lpszPassword |
|
) |
| |
|
inherited |
[設定] 接続.
指定の設定で、データベースと接続します。
- 覚え書き
- Start() していない場合、スタートします。
- 引数
-
lpszDataBaseName | データベース名. |
lpszUserName | ユーザー名 |
lpszPassword | パスワード |
- 戻り値
-
TnbTinySqlAccessor.h の 1762 行目に定義があります。
◆ Connect() [3/3]
bool Connect |
( |
LPCTSTR |
lpszDriverName, |
|
|
LPCTSTR |
lpszDataBaseName, |
|
|
LPCTSTR |
lpszUserName, |
|
|
LPCTSTR |
lpszPassword, |
|
|
SQLUSMALLINT |
options = SQL_DRIVER_NOPROMPT |
|
) |
| |
|
inherited |
[設定] 接続.
指定の設定で、データベースと接続します。
- 覚え書き
- Start() していない場合、スタートします。
- 引数
-
lpszDriverName | ドライバー名. |
lpszDataBaseName | データベース名. |
lpszUserName | ユーザー名 |
lpszPassword | パスワード |
options | オプション. |
- 戻り値
-
TnbTinySqlAccessor.h の 1820 行目に定義があります。
◆ ConnectDataFile()
bool ConnectDataFile |
( |
LPCTSTR |
lpszManageName = NULL | ) |
|
[設定] 接続.
指定の設定で、データベースと接続します。
- 覚え書き
- Start() していない場合、スタートします。
- 引数
-
lpszManageName | 管理名。AttachDataFile() を使い、MDF ファイルに管理名を付けてアタッチしておく必要があります。 |
- 戻り値
-
TnbTinyMsSqlAccessor.h の 202 行目に定義があります。
◆ CreateStatement()
◆ DetachDataFile()
static bool DetachDataFile |
( |
LPCTSTR |
lpszManageName, |
|
|
LPCTSTR |
lpszDriver, |
|
|
LPCTSTR |
lpszServer = NULL |
|
) |
| |
|
static |
◆ Disconnect()
◆ GetLastReturnCode()
◆ GetSqlChar()
static SQLTCHAR * GetSqlChar |
( |
CStr & |
_s, |
|
|
size_t |
len = 0 |
|
) |
| |
|
staticinherited |
◆ IsAutoCommit()
bool IsAutoCommit |
( |
void |
| ) |
|
|
inherited |
◆ IsConnecting()
bool IsConnecting |
( |
void |
| ) |
const |
|
inherited |
◆ IsDataFileAttached()
static bool IsDataFileAttached |
( |
LPCTSTR |
lpszManageName, |
|
|
LPCTSTR |
lpszDriver |
|
) |
| |
|
static |
◆ IsStarted()
bool IsStarted |
( |
void |
| ) |
const |
|
inherited |
◆ PreparedStatement()
◆ RestoreDataFile()
static bool RestoreDataFile |
( |
LPCTSTR |
lpszBackupFileName, |
|
|
LPCTSTR |
lpszManageName, |
|
|
LPCTSTR |
lpszServer = NULL |
|
) |
| |
|
static |
[設定] データファイルのリストア.
- 引数
-
lpszBackupFileName | バックアップファイル名。 |
lpszManageName | 管理名。 |
lpszServer | サーバー名。省略すると .¥SQLEXPRESS になります。 |
- 戻り値
-
TnbTinyMsSqlAccessor.h の 334 行目に定義があります。
◆ Rollback()
◆ SetAutoCommit()
bool SetAutoCommit |
( |
bool |
isEnable | ) |
|
|
inherited |
◆ SetQueryTimeout()
void SetQueryTimeout |
( |
DWORD |
tm | ) |
|
|
inherited |
◆ Start()
◆ Stop()
◆ SystemTimeToString()