您的位置:程序门 -> vb -> 数据库(包含打印,安装,报表)



conn.EXECute插入失败的问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


conn.EXECute插入失败的问题[已结贴,结贴人:cici_chen]
发表于:2007-06-13 20:58:23 楼主
比如说   一个用户登陆     表中   用户名   是主键.
我向里面添加一条已经存在的记录.   用
conn.EXECute   "insert   into   ... "
形式.
这样就会出现问题.
  用什么方法可以让他出现问题不报错,而又能判断是否添加成功???

谢谢   高手!
发表于:2007-06-13 22:11:031楼 得分:0
on   error   goto   err
  conn.excute   "insert... "
  msgbox   "successfull "
  exit   sub
err:
  msgbox   "fail "   &   err.description
end   sub
发表于:2007-06-13 22:40:082楼 得分:0
没有更好的办法吗?   不用异常捕获?

能不能告诉我conn.EXECute   这个方法的具体情况?
  好象可以有三个参数......
发表于:2007-06-13 23:08:233楼 得分:0
那就提前检查一下,如果数据存在就不插入。否则插入

你想想,非要插入一个主键值相同的数据还不让人家报错,有点不讲理了
发表于:2007-06-14 10:28:074楼 得分:0
on   error   goto   err
  conn.excute   "insert... "
    '正常
  exit   sub
err:
    '你自己写错误处理
end   sub

发表于:2007-06-14 15:40:535楼 得分:20

貌似以上两种方法都可以,如果你想在EXECute的参数上做文章则有点缘木求鱼的味道了
command.EXECute   recordsaffected,   parameters,   options

返回值

返回   recordset   对象引用。

参数

recordsaffected       可选,长整型变量,提供者向其返回操作所影响的记录数目。recordsaffected   参数仅应用于操作查询或存储过程。recordsaffected   不返回由返回结果的查询或存储过程所返回的记录数目。详细信息,请使用   recordcount   属性。

parameters       可选,变体型数组,使用   sql   语句传送的参数值。(用该参数传送时输出参数将不返回正确值。)

options       可选,长整型值,指示提供者如何计算   command   对象的   commandtext   属性。该值可为下列常量之一:

常量   说明  
adcmdtext   指示提供者应按命令的文本定义(如   sql   语句)来计算   commandtext。  
adcmdtable   指示   ado   应生成   sql   查询以便从   commandtext   命名的表中返回所有行。  
adcmdtabledirect   指示提供者应从   commandtext   命名的表中返回所有行。  
adcmdstoredproc   指示提供者应按存储过程计算   commandtext。  
adcmdunknown   指示   commandtext   中的命令类型未知。  
adasyncEXECute   指示命令应异步执行。  
adasyncfetch   指示对由   cachesize   属性指定的初始数量之后的剩余行应使用异步提取  


快速检索

最新资讯
热门点击