存储名称:nlv_package.pro_mep存储参数:
序号 名称 输入/输出 类型 说明
1 HPZL 输入 VARCHAR2(2) 号牌种类,可以为空,按GA24.7
2 HPHM 输入 VARCHAR2(16) 号牌号码,可以为空
3 WFSJ 输入 DATE 违法时间,不可以为空
4 WFXW 输入 VARCHAR2(5) 违法行为,不可以为空,引用5 WFDD 输入 VARCHAR2(12) 违法地点代码,不可以为空,按GA408.3,(编码规则见“附录2”)。
6 WFDZ 输入 VARCHAR2(200) 违法地址,可以为空,
7 CJR 输入 VARCHAR2(8) 采集人警号
8 CJJG 输入 VARCHAR2(10) 采集机关,不可以为空,引用NLV_UNIT_LOCAL.DM
9 SJLY 输入 VARCHAR2(2) 数据来源,不可以为空,具体说明见“附录4”。
10 ZPLX 输入 CHAR(1) 抓拍类型,不可以为空,取下列值之一:
11 SBBH 输入 VARCHAR2(16) 设备编号,不可以为空,引用NLV_DEVICE.SBBH
12 DLGLS 输入 NUMBER(4) 道路公里数,不可以为空
13 DLMS 输入 NUMBER(3) 道路米数,不可以为空
14 FJBZ 输入 VARCHAR2(50) 附近标记,可以为空
15 CLSD 输入 NUMBER(3) 车辆速度,可以为空
16 DCXS 输入 NUMBER(3) 大车限速,可以为空
17 XCXS 输入 NUMBER(3) 小车限速,可以为空
18 DCZFXS 输入 NUMBER(3) 大车执法限速,可以为空
19 XCZFXS 输入 NUMBER(3) 小车执法限速,可以为空
20 ZDXS 输入 NUMBER(3) 最低限速,可以为空
21 ZJWJ1 输入 BLOB 证据图片一,不可以为空
22 ZJWJ2 输入 BLOB 证据图片二,可以为空
23 ZJWJ3 输入 BLOB 证据图片三,可以为空
24 ZJWJ4 输入 BLOB 证据图片四,可以为空
25 ZXJG 输出 INTEGER 执行结果,(详细见“附录1”)
调用存储过程的代码如下:
::CoInitialize(NULL);//初始化com组件pCon.CreateInstance(__uuidof(Connection));//实例化
pRec.CreateInstance(__uuidof(Recordset));
comm.CreateInstance(__uuidof(Command)); HRESULT hr;
AfxMessageBox("开始进行连接");
try
{
//_10.231.152.15
hr=pCon->Open("Provider=MSDAORA.1;;Data Source=NLV;Password=GUEST;User ID=NLV_GUEST;Persist Security Info=True","","",adModeUnknown);
}
catch(_com_error *e)
{
MessageBox(e->ErrorMessage());
}
AfxMessageBox("连接结束");//oracle执行存储过程的准备
comm->ActiveConnection = pCon; //ADO连接
comm->CommandType = adCmdStoredProc;
comm->CommandText=_bstr_t(L"nlv_package.pro_mep"); //存储过程名
comm->Parameters->Append(comm->CreateParameter("HPZL",adBSTR,adParamInput,2,_variant_t(hpzl)));
comm->Parameters->Append(comm->CreateParameter("HPHM",adBSTR,adParamInput,16,_variant_t(hphm)));
comm->Parameters->Append(comm->CreateParameter("WFSJ",adDBTimeStamp,adParamInput,20,_variant_t(wfsj)));
comm->Parameters->Append(comm->CreateParameter("WFXW",adBSTR,adParamInput,5,_variant_t(wfxw)));
comm->Parameters->Append(comm->CreateParameter("WFDD",adBSTR,adParamInput,12,_variant_t(wfdddm)));
comm->Parameters->Append(comm->CreateParameter("WFDZ",adBSTR,adParamInput,200,_variant_t(wfdd)));
comm->Parameters->Append(comm->CreateParameter("CJR",adBSTR,adParamInput,8,""));
comm->Parameters->Append(comm->CreateParameter("CJJG",adBSTR,adParamInput,10,_variant_t(cjjg)));
comm->Parameters->Append(comm->CreateParameter("SJLY",adBSTR,adParamInput,2,_variant_t(sjly)));
comm->Parameters->Append(comm->CreateParameter("ZPLX",adBSTR,adParamInput,1,_variant_t(zplx)));
comm->Parameters->Append(comm->CreateParameter("SBBH",adBSTR,adParamInput,16,_variant_t(sbbh)));
comm->Parameters->Append(comm->CreateParameter("DLGLS",adNumeric,adParamInput,4,dlgl));
comm->Parameters->Append(comm->CreateParameter("DLMS",adNumeric,adParamInput,3,dlms));
comm->Parameters->Append(comm->CreateParameter("FJBZ",adBSTR,adParamInput,6,""));comm->Parameters->Append(comm->CreateParameter("CLSD",adNumeric,adParamInput,3,cpsd));
comm->Parameters->Append(comm->CreateParameter("DCXS",adNumeric,adParamInput,3,dcxs));
comm->Parameters->Append(comm->CreateParameter("XCXS",adNumeric,adParamInput,3,xcxs));
comm->Parameters->Append(comm->CreateParameter("DCZFXS",adNumeric,adParamInput,3,dczf));
comm->Parameters->Append(comm->CreateParameter("XCZFXS",adNumeric,adParamInput,3,xczf));
comm->Parameters->Append(comm->CreateParameter("ZDXS",adNumeric,adParamInput,3,0));comm->Parameters->Append(comm->CreateParameter("ZJWJ1",adBSTR,adParamInput,100,_variant_t(tp1)));
comm->Parameters->Append(comm->CreateParameter("ZJWJ2",adBSTR,adParamInput,100,_variant_t(tp2)));
comm->Parameters->Append(comm->CreateParameter("ZJWJ3",adBSTR,adParamInput,6,""));
comm->Parameters->Append(comm->CreateParameter("ZJWJ4",adBSTR,adParamInput,6,""));int hh;
comm->Parameters->Append(comm->CreateParameter("ZXJG",adInteger,adParamOutput,sizeof(int),hh)); try
{
comm->Execute(NULL,NULL,adCmdUnknown); //到这就出错了}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
AfxMessageBox("存储完成");
_variant_t var=comm->Parameters->GetItem("ZXJG")->GetValue();
comm->Release();希望兄弟姐们帮我看看啊
序号 名称 输入/输出 类型 说明
1 HPZL 输入 VARCHAR2(2) 号牌种类,可以为空,按GA24.7
2 HPHM 输入 VARCHAR2(16) 号牌号码,可以为空
3 WFSJ 输入 DATE 违法时间,不可以为空
4 WFXW 输入 VARCHAR2(5) 违法行为,不可以为空,引用5 WFDD 输入 VARCHAR2(12) 违法地点代码,不可以为空,按GA408.3,(编码规则见“附录2”)。
6 WFDZ 输入 VARCHAR2(200) 违法地址,可以为空,
7 CJR 输入 VARCHAR2(8) 采集人警号
8 CJJG 输入 VARCHAR2(10) 采集机关,不可以为空,引用NLV_UNIT_LOCAL.DM
9 SJLY 输入 VARCHAR2(2) 数据来源,不可以为空,具体说明见“附录4”。
10 ZPLX 输入 CHAR(1) 抓拍类型,不可以为空,取下列值之一:
11 SBBH 输入 VARCHAR2(16) 设备编号,不可以为空,引用NLV_DEVICE.SBBH
12 DLGLS 输入 NUMBER(4) 道路公里数,不可以为空
13 DLMS 输入 NUMBER(3) 道路米数,不可以为空
14 FJBZ 输入 VARCHAR2(50) 附近标记,可以为空
15 CLSD 输入 NUMBER(3) 车辆速度,可以为空
16 DCXS 输入 NUMBER(3) 大车限速,可以为空
17 XCXS 输入 NUMBER(3) 小车限速,可以为空
18 DCZFXS 输入 NUMBER(3) 大车执法限速,可以为空
19 XCZFXS 输入 NUMBER(3) 小车执法限速,可以为空
20 ZDXS 输入 NUMBER(3) 最低限速,可以为空
21 ZJWJ1 输入 BLOB 证据图片一,不可以为空
22 ZJWJ2 输入 BLOB 证据图片二,可以为空
23 ZJWJ3 输入 BLOB 证据图片三,可以为空
24 ZJWJ4 输入 BLOB 证据图片四,可以为空
25 ZXJG 输出 INTEGER 执行结果,(详细见“附录1”)
调用存储过程的代码如下:
::CoInitialize(NULL);//初始化com组件pCon.CreateInstance(__uuidof(Connection));//实例化
pRec.CreateInstance(__uuidof(Recordset));
comm.CreateInstance(__uuidof(Command)); HRESULT hr;
AfxMessageBox("开始进行连接");
try
{
//_10.231.152.15
hr=pCon->Open("Provider=MSDAORA.1;;Data Source=NLV;Password=GUEST;User ID=NLV_GUEST;Persist Security Info=True","","",adModeUnknown);
}
catch(_com_error *e)
{
MessageBox(e->ErrorMessage());
}
AfxMessageBox("连接结束");//oracle执行存储过程的准备
comm->ActiveConnection = pCon; //ADO连接
comm->CommandType = adCmdStoredProc;
comm->CommandText=_bstr_t(L"nlv_package.pro_mep"); //存储过程名
comm->Parameters->Append(comm->CreateParameter("HPZL",adBSTR,adParamInput,2,_variant_t(hpzl)));
comm->Parameters->Append(comm->CreateParameter("HPHM",adBSTR,adParamInput,16,_variant_t(hphm)));
comm->Parameters->Append(comm->CreateParameter("WFSJ",adDBTimeStamp,adParamInput,20,_variant_t(wfsj)));
comm->Parameters->Append(comm->CreateParameter("WFXW",adBSTR,adParamInput,5,_variant_t(wfxw)));
comm->Parameters->Append(comm->CreateParameter("WFDD",adBSTR,adParamInput,12,_variant_t(wfdddm)));
comm->Parameters->Append(comm->CreateParameter("WFDZ",adBSTR,adParamInput,200,_variant_t(wfdd)));
comm->Parameters->Append(comm->CreateParameter("CJR",adBSTR,adParamInput,8,""));
comm->Parameters->Append(comm->CreateParameter("CJJG",adBSTR,adParamInput,10,_variant_t(cjjg)));
comm->Parameters->Append(comm->CreateParameter("SJLY",adBSTR,adParamInput,2,_variant_t(sjly)));
comm->Parameters->Append(comm->CreateParameter("ZPLX",adBSTR,adParamInput,1,_variant_t(zplx)));
comm->Parameters->Append(comm->CreateParameter("SBBH",adBSTR,adParamInput,16,_variant_t(sbbh)));
comm->Parameters->Append(comm->CreateParameter("DLGLS",adNumeric,adParamInput,4,dlgl));
comm->Parameters->Append(comm->CreateParameter("DLMS",adNumeric,adParamInput,3,dlms));
comm->Parameters->Append(comm->CreateParameter("FJBZ",adBSTR,adParamInput,6,""));comm->Parameters->Append(comm->CreateParameter("CLSD",adNumeric,adParamInput,3,cpsd));
comm->Parameters->Append(comm->CreateParameter("DCXS",adNumeric,adParamInput,3,dcxs));
comm->Parameters->Append(comm->CreateParameter("XCXS",adNumeric,adParamInput,3,xcxs));
comm->Parameters->Append(comm->CreateParameter("DCZFXS",adNumeric,adParamInput,3,dczf));
comm->Parameters->Append(comm->CreateParameter("XCZFXS",adNumeric,adParamInput,3,xczf));
comm->Parameters->Append(comm->CreateParameter("ZDXS",adNumeric,adParamInput,3,0));comm->Parameters->Append(comm->CreateParameter("ZJWJ1",adBSTR,adParamInput,100,_variant_t(tp1)));
comm->Parameters->Append(comm->CreateParameter("ZJWJ2",adBSTR,adParamInput,100,_variant_t(tp2)));
comm->Parameters->Append(comm->CreateParameter("ZJWJ3",adBSTR,adParamInput,6,""));
comm->Parameters->Append(comm->CreateParameter("ZJWJ4",adBSTR,adParamInput,6,""));int hh;
comm->Parameters->Append(comm->CreateParameter("ZXJG",adInteger,adParamOutput,sizeof(int),hh)); try
{
comm->Execute(NULL,NULL,adCmdUnknown); //到这就出错了}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
AfxMessageBox("存储完成");
_variant_t var=comm->Parameters->GetItem("ZXJG")->GetValue();
comm->Release();希望兄弟姐们帮我看看啊
解决方案 »
- 如何判断某个系统窗口已打开
- 求助!!!帮帮小弟在VC6.0中编译一下这个静态库,工程在附件中
- 如何用vc实现先将图像数据写入内存,再从内存中拷贝到屏幕!
- 最近不知道我碰了那个地方,vc编辑器出了个怪现象,生成的xx.ncb, xx.asp文件怎么从界面上看不到后缀。
- 在对话框CPP文件中如何释放NEW运算符对应内存所指的内存~~~~~~
- COM异步调用
- help
- 改变CSliderCtrl的Thumb的尺寸
- vc6.0遇到连接错误LNK2001怎么解决?
- 学过一点C++(简单的东西知道了。复杂的就。。。).现在想学习VC,那我该从SDK开始还是从MFC开始??
- 两个类中怎样实现画图的传递
- MFC好学吗?
大哥们帮我看看啊,我快急死了.
这句的一个null那里应该是一条SQL语句吧
Set recordset = connection.Execute (CommandText, RecordsAffected, Options)CommandText
A String value that contains the SQL statement, stored procedure, a URL, or provider-specific text to execute. Optionally, table names can be used but only if the provider is SQL aware. For example if a table name of "Customers" is used, ADO will automatically prepend the standard SQL Select syntax to form and pass "SELECT * FROM Customers" as a T-SQL statement to the provider.
改成:
comm->Execute(NULL,NULL,adCmdStoredProc);试试
不用是现场吧,你公司或者家里装了oracle的话都可以测试啊..