首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

vb中利用adodc控件插入新纪录插入记录,主键重复后会提示异常然后退出系统,该怎么处理啊

2012-04-28 
vb中利用adodc控件插入新纪录插入记录,主键重复后会提示错误然后退出系统,该怎么办啊?怎么才能提示出错单

vb中利用adodc控件插入新纪录插入记录,主键重复后会提示错误然后退出系统,该怎么办啊?
怎么才能提示出错单又可以重新返回系统重新输入界面啊。
还有就是如果在学生信息管理系统中有一个getnumber的学号全局变量,怎么用它来将这个学生的所有信息输出到一个标签上啊,格式为学号:001 换行后 姓名:张三 换行等等信息。其中学号和姓名什么的是字段名字。好像用什么adod.Recordset我不会用,求大神帮帮我把!学号是主键,字段包括学号,姓名,性别,民族,政治面貌等十几个字段,该怎么写啊。


[解决办法]
主键使用自动增量类型,在界面不要涉及主键操作,而由数据库自动添加。

2:
dim s as string
with adodc1.recordset
if .recordcount>0 then
 .movefirst
while not .eof
s=s & .fidlds("学号") & .fidlds("姓名") & .fidlds("性别") &.fields("其它字段")&vbcrlf
.movenext
wend
label1=s
end if


end with
[解决办法]

VB code
'1,保存前先判断输入的学号是否已经存在strsql=" select 学号 from 表名 where 学号='"& text1.text &"'"if rs.state<>adstateclosed then rs.closers.open strsql,conn,adopenkeyset,adlockreadonlyif rs.recordcount>0 then    msgbox "学号已经在在,请重新输入!",48,"提示"    rs.close    exit subelse    '保存记录     conn.execute "insert into 表名(...) values(...)"end ifrs.close'查询记录strsql=" select * from 表名 where 学号='"& getnumer &"'"if rs.state<>adstateclosed then rs.closers.open strsql,conn,adopenkeyset,adlockreadonlyif rs.recordcount=0 then    msgbox "此学号不存在!",48,"提示"    rs.close    exit subelse    label1.caption="学号:" & rs!学号 & vbcrlf & "姓名:" & rs!姓名 & vbcrlf    label1.refreshend ifrs.close
[解决办法]
插入前先查询确认。因为你丢出 SQL 以后,报错的就是 Jet Engine 程序了,VB 无法控制。

热点排行