当我从 C++ 代码调用存储过程时,我的浮点参数以某种方式拆分如下:34.555 => 34,555,并且由于参数数量不匹配而出现错误。
这就是我向 _CommandPtr 添加参数的方式
...
VARIANT VtLon = {0};
VtLon.vt = VT_NULL;
if(TargInf.dwFields & TI_FIELD_LON )
{
VtLon.vt = VT_R8;
VtLon.dblVal = TargInf.dLongitude;
}
param = pCommand_LogNewEvent->CreateParameter( _bstr_t( L"lon" ), adDouble, adParamInput, sizeof( double ), VtLon );
pCommand_LogNewEvent->Parameters->Append( param );
...
我将sql server默认语言从俄语更改为英语,问题就消失了。但是我需要一种方法来管理它,而不需要这样的全局设置。