我有一个类,它接受一个 SQL 查询,执行它,然后使用逐行绑定将结果集中的每一列绑定为 SQL_C_WCHAR。
现在我这样做的方法是分配一个 char 向量,并确定提供 SQLBindColumn 的指针,如下所示:
- 第 1 列的缓冲区 = &vec[0]
- 第 1 列长度指示器的缓冲区 = &vec[0] + (sizeof(SQLWCHAR) * 第 1 列的长度)
- 第 2 列的缓冲区 = &vec[0] + (sizeof(SQLWCHAR) * 第 1 列的长度) + sizeof(长度指示符)
- 第 2 列长度指示符的缓冲区 = &vec[0] + (sizeof(SQLWCHAR) * 第 1 列长度) + sizeof(长度指示符) + (sizeof(SQLWCHAR) * 第 2 列长度)
等等
这会导致一些对齐问题(在 SPARC 上)。我知道我需要添加一些填充,但我不知道如何计算便携性。