例如:_RecordsetPtr record;
... // 连接数据库
_variant_t vt; vt.vt = VT_I1; vt.cVal = 'a'; record->PutCollect("Mode",vt); // 这句出错。
//在数据库中Mode的属性是一个字节的char型
// 如果我把数据库中Mode属性改为3个字节长度就可以写入
//但写入的该字符的ASCII码值,例如: 'a' -> 97
... // 连接数据库
_variant_t vt; vt.vt = VT_I1; vt.cVal = 'a'; record->PutCollect("Mode",vt); // 这句出错。
//在数据库中Mode的属性是一个字节的char型
// 如果我把数据库中Mode属性改为3个字节长度就可以写入
//但写入的该字符的ASCII码值,例如: 'a' -> 97
这样, 你就可以写一条 insert 的 sql 语句把值插入到数据库表中了.
_ConnectionPtr pConn;
// pConn 创建连接
CString str = "a";
_bstr_t sql = "insert into abc(theNo, Mode) values(123, '"+ str +"')";
pConn->Execute(sql, NULL, adCmdText);
难道用 _RecordsetPtr 就不能写单个字符?
a="mode";
record->PutCollect(a.sysallocstring(),vt);
这样应该可以了吧。
参数应该是一个variant变量的,不能直接用字符串的。
CString 有这个成员吗?-----------------------------------------------------------------adCmdText文本, 用单个字符不行吧----------------------------
那应该用什么呢?