ADOTestMSSQL
来源:互联网 发布:json视图编辑器 编辑:程序博客网 时间:2024/06/07 07:04
- // ADOTest.cpp : 定义控制台应用程序的入口点。
- //
- #include "stdafx.h"
- using namespace std;
- int _tmain(int argc, _TCHAR* argv[])
- {
- ::CoInitialize(NULL); //初始化COM组件,MFC用AfxOleInit()
- _ConnectionPtr pConn; //定义智能指针
- _CommandPtr pCmd; //定义智能指针
- _RecordsetPtr pRecord; //定义智能指针
- _ParameterPtr pParam; //定义智能指针
- _bstr_t strCnn("Provider=sqloledb.1;Data Source=(local);" //连接MSSQL字符串
- "Initial Catalog=RTU;User Id=sa;Password=5197313;");
- if (FAILED(pConn.CreateInstance("ADODB.Connection"))) //初始ADODB连接
- {
- cout<<"Create Instance failed!"<<endl;
- }
- try
- {
- pConn->Open(strCnn,"","",adConnectUnspecified); //连接数据库,ADO操作中建议语句中要常用try...catch()来捕获错误信息
- }
- catch(_com_error e)
- {
- cout<<"数据库连接失败!"<<endl;
- return 0;
- }
- pCmd.CreateInstance(__uuidof(Command)); //初始_CommandPtr智能指针
- pCmd->ActiveConnection = pConn; //智能指针定位到连接指针.
- //******************************普通sql语句操作****************************************************//
- /*pCmd->CommandText = "SELECT * FROM T_WMETER"; //给CommandText赋SQL语句
- pRecord.CreateInstance(__uuidof(Recordset)); //初始_RecordsetPtr智能指针
- pRecord = pCmd->Execute(NULL, NULL,adCmdText); //执行SQL语句
- if(!pRecord->BOF)
- pRecord->MoveFirst(); //设置指针初始位置
- _variant_t var;
- long Wmeter = 0;
- var = pRecord->GetCollect("WMeterID");
- if(var.vt != VT_NULL)
- Wmeter = var.lVal;
- pRecord->MoveNext(); //移动ADO指针显示下一条数据
- var = pRecord->GetCollect("WMeterID");
- if(var.vt != VT_NULL)
- Wmeter = var.lVal;
- cout<<Wmeter<<endl;*/
- //**********************************************************************************//
- //*******************************测试用存储过程sp_1调用***************************************************//
- _variant_t var; //定义传参变量
- var.intVal = 555; //定义参数值
- pCmd->CommandText = "sp_1"; //指定存储过程
- pParam.CreateInstance(__uuidof(Parameter)); //初始参数指针
- pCmd->Parameters->Refresh(); //刷新参数
- pParam = pCmd->CreateParameter(_bstr_t("@pin"),adInteger,adParamInput,sizeof(int),var.intVal); //创建参数@pin
- pCmd->Parameters->Append(pParam); //添加参数到指针
- pParam = pCmd->CreateParameter(_bstr_t("@pout"),adInteger,adParamOutput,sizeof(int)); //创建参数@pout
- pCmd->Parameters->Append(pParam); //添加参数到指针
- try
- {
- pCmd->Execute(NULL,NULL,adCmdStoredProc); //执行存储过程
- }
- catch(_com_error e)
- {
- cout<<e.Description()<<endl;
- cin.get();
- }
- try
- {
- cout<<pCmd->Parameters->GetItem("@pout")->GetValue().intVal<<endl; //获取OutPut参数的值
- }
- catch(_com_error e)
- {
- cout<<e.Description()<<endl;
- cin.get();
- }
- cin.get();
- return 0;
- }
- ADOTestMSSQL
- CPL文件
- 更新整个库中所有表的指定字段名称
- MS08-052 WMF漏洞分析及漏洞测试
- MS Windows GDI+ Proof of Concept (MS08-052) #2
- MS Windows 2003 Token Kidnapping Local Exploit PoC
- ADOTestMSSQL
- ASP.NET自定义控件属性的特性大全
- VS2005:开发工具技巧荟萃(随时更新)
- XFire:轻松简单地开发Web Services
- VB.NET按字节截取字符串
- sizeof内存对齐和虚指针内存布局
- bean:write 格式化
- [分享兼散分]一个好网址,大量有用JS,代码可下载
- DNS解析