#include <sstream>
#include <string>
using namespace std;
#import "msado15.dll" no_namespace rename("EOF","EndOfFile")
//从windows 或Program Files目录中拷贝msado15.dll到项目目录,然后生成一次。
//生成msado15.tlb文件后再次编译完成。
void SetLastPrice(double vlastprice,char vtime[9])
{
CoInitialize(NULL);
//_RecordsetPtr智能指针,可以用来打开库内数据表,并可以对表内的记录、字段等进行各种操作
_RecordsetPtr m_pRecordset("ADODB.Recordset");//定义记录集对象
//_ConnectionPtr智能指针,通常用于打开、关闭一个库连接或用它的Execute方法来执行一个不返回结果的命令语句
_ConnectionPtr m_pConnection("ADODB.Connection");//定义数据库连接对象
_RecordsetPtr pRst(__uuidof(Recordset));
m_pConnection.CreateInstance("ADODB.Connection");
_bstr_t strConnect = "Provider=SQLOLEDB; Persist Security Info=true;Catalog=Study;Data Source=192.168.1.x;Use Encryption for Data=false";
m_pConnection->Open(strConnect, "userid", "password", adConnectUnspecified);
time_t now = time(0);
tm *tm_t = localtime(&now);
char str[80];
sprintf(str, "%d-%d-%d %s", tm_t->tm_year+1900, tm_t->tm_mon+1, tm_t->tm_mday, vtime);
string cmdstr = "update TopViewStatus set vhsprice = ";
stringstream ss1;
ss1 << vlastprice;
string dss = ss1.str();
cmdstr.append(dss.c_str());
cmdstr.append(",vhstime='");
cmdstr.append(str);
cmdstr.append("' WHERE id=36");
//cout << "cmdstr:" << cmdstr << endl;
_bstr_t bstr1 = cmdstr.c_str();
pRst = m_pConnection->Execute(bstr1, NULL, adCmdText);
//cout << "pRst:" << pRst << endl;
if (m_pConnection == NULL) printf("conn error");
CoUninitialize();
};
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交