📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
| 228行目: | 228行目: | ||
== レコードの挿入 == | == レコードの挿入 == | ||
==== 基本的な挿入 ==== | |||
<syntaxhighlight lang="c++"> | <syntaxhighlight lang="c++"> | ||
#include <afxdb.h> | #include <afxdb.h> | ||
| 252行目: | 253行目: | ||
db.BeginTrans(); | db.BeginTrans(); | ||
// 日付文字列のフォーマット(YYYY-MM-DD HH:MM:SS) | |||
COleDateTime currentDateTime = COleDateTime::GetCurrentTime(); | |||
CString strDateTime = currentDateTime.Format(_T("%Y-%m-%d %H:%M:%S")); | |||
// 数値の金額をフォーマット (小数点以下2桁) | |||
double dblAmount = 1234.56; | |||
CString strAmount; | |||
strAmount.Format(_T("%.2f"), dblAmount); | |||
// バイナリデータの準備 (例 : 16進数データ) | |||
BYTE binaryData[] = {0x01, 0x02, 0x03, 0x04}; | |||
CString strBinary; | |||
for (int i = 0; i < sizeof(binaryData); i++) { | |||
CString temp; | |||
temp.Format(_T("%02X"), binaryData[i]); | |||
strBinary += temp; | |||
} | |||
// INSERT文の実行 | // INSERT文の実行 | ||
// 注意:実際のテーブル構造に合わせてカラム名と値を設定する必要があります | // 注意:実際のテーブル構造に合わせてカラム名と値を設定する必要があります | ||
| 290行目: | 309行目: | ||
// データベース接続のクローズ | // データベース接続のクローズ | ||
db.Close(); | db.Close(); | ||
</syntaxhighlight> | |||
<br> | |||
==== 各データ型の挿入 ==== | |||
<syntaxhighlight lang="c++"> | |||
// INSERT文の作成 | |||
CString strSQL; | |||
strSQL.Format(_T("INSERT INTO SampleTable ") | |||
_T("(VarcharColumn, ") // VARCHAR型 | |||
_T("NvarcharColumn, ") // NVARCHAR型 | |||
_T("IntColumn, ") // INT型 | |||
_T("BigIntColumn, ") // BIGINT型 | |||
_T("SmallIntColumn, ") // SMALLINT型 | |||
_T("TinyIntColumn, ") // TINYINT型 | |||
_T("BitColumn, ") // BIT型 | |||
_T("DecimalColumn, ") // DECIMAL型 | |||
_T("FloatColumn, ") // FLOAT型 | |||
_T("DateColumn, ") // DATE型 | |||
_T("DateTimeColumn, ") // DATETIME型 | |||
_T("DateTime2Column, ") // DATETIME2型 | |||
_T("TimeColumn, ") // TIME型 | |||
_T("BinaryColumn, ") // BINARY型 | |||
_T("UniqueIdentifier) ") // UNIQUEIDENTIFIER型 | |||
_T("VALUES ") | |||
_T("('%s', ") // VARCHAR | |||
_T("N'%s', ") // NVARCHAR(Unicode文字列) | |||
_T("%d, ") // INT | |||
_T("%I64d, ") // BIGINT | |||
_T("%d, ") // SMALLINT | |||
_T("%d, ") // TINYINT | |||
_T("%d, ") // BIT | |||
_T("%s, ") // DECIMAL | |||
_T("%f, ") // FLOAT | |||
_T("'%s', ") // DATE | |||
_T("'%s', ") // DATETIME | |||
_T("'%s', ") // DATETIME2 | |||
_T("'%s', ") // TIME | |||
_T("0x%s, ") // BINARY | |||
_T("'%s')"), // UNIQUEIDENTIFIER | |||
// 各データ型の値を指定 | |||
_T("テスト文字列"), // VARCHAR値 | |||
_T("Unicode文字列"), // NVARCHAR値 | |||
12345, // INT値 | |||
9223372036854775807LL, // BIGINT値 (最大値) | |||
32767, // SMALLINT値 | |||
255, // TINYINT値 | |||
1, // BIT値 (0または1) | |||
strAmount, // DECIMAL値 | |||
123.456789, // FLOAT値 | |||
currentDateTime.Format(_T("%Y-%m-%d")), // DATE値 | |||
strDateTime, // DATETIME値 | |||
strDateTime, // DATETIME2値 | |||
currentDateTime.Format(_T("%H:%M:%S.0000000")), // TIME値 | |||
strBinary, // BINARY値 | |||
_T("12345678-1234-1234-1234-123456789012") // UNIQUEIDENTIFIER値 | |||
); | |||
</syntaxhighlight> | </syntaxhighlight> | ||
<br><br> | <br><br> | ||