cpubbs论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 1779|回复: 4

求助:错误代码:0x80040e07,标准表达式中数据类型不匹配

[复制链接]
发表于 2009-5-25 11:35:29 | 显示全部楼层 |阅读模式
NON-FATAL RUN-TIME ERROR:   "patient.c", line 348, col 21, thread id 0x00000FF0:   Function DBExecutePreparedSQL: (return value == -10 [0xfffffff6]). Native error code -2147217913 0x80040e07 Microsoft OLE DB Provider for ODBC Drivers:     [Microsoft][ODBC Microsoft Access Driver] 标准表达式中数据类型不匹配。
发表于 2009-5-25 12:18:30 | 显示全部楼层
这是你调用函数:DBExecutePreparedSQL(。。。)时的参数类型不对,自己再检查一下吧!
 楼主| 发表于 2009-5-25 14:51:07 | 显示全部楼层
仔细看过,还是有些不明白啊,部分源码如下,版主多指教啊!
hstmt1=DBPrepareSQL(hdbc,"INSERT INTO 病人基本信息 VALUES(?,?,?,?,?)");
DBCreateParamInt(hstmt1,"AGE",DB_PARAM_INPUT,agevalue);
DBCreateParamChar(hstmt1,"NAME",DB_PARAM_INPUT,namevalue,9);
DBCreateParamChar(hstmt1,"SEX",DB_PARAM_INPUT,sexvalue,3);
DBCreateParamChar(hstmt1,"ADDR",DB_PARAM_INPUT,addrvalue,12);
DBCreateParamChar(hstmt1,"TEL",DB_PARAM_INPUT,telvalue,28);
DBExecutePreparedSQL(hstmt1);
DBClosePreparedSQL(hstmt1);
发表于 2009-5-25 15:21:10 | 显示全部楼层
就你提供的代码片断来说,并无什么毛病(当然,我不考虑你的变量声明)!
只能怀疑:INSERT INTO 病人基本信息 VALUES(?,?,?,?,?)此句可能有误(因为一般的数据表中总会设一个ID什么的主键列),所以,建议你先确认一下"病人基本信息" 表是否只有五列数据
 楼主| 发表于 2009-5-26 16:09:52 | 显示全部楼层
谢谢版主提示,问题已经解决了!主要是VALUES值与数据表中各列没有对应!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2025-4-21 03:04 , Processed in 0.805494 second(s), 5 queries , Gzip On, File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表