数据保存问题,谢谢了.

游子 2007-09-17 08:50:07
下面是我保存的代码:
  Dim strSQL As String
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset

rs.LockType = adLockOptimistic
rs.CursorType = adOpenKeyset

cnn.CursorLocation = adUseClient
cnn.connectionstring = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Showup.mdb"
cnn.Open

rs.Open "SELECT 字段1,字段2,字段3,时间 FROM code where 字段2='" & Text2.Text & "' & 字段3='" & Text3.Text & "' ", cnn
If rs.EOF = False Then
MsgBox "已经存在该条码."
Else
rs.AddNew
With rs
.Fields("字段1") = Text1.Text
.Fields("字段2") = Text2.Text
.Fields("字段3") = Text3.Text
.Fields("时间") = Text4.Text
.Update
End With
MsgBox "保存成功"
End If
cnn.Close
但是我现在有个要求是,在一个表中,字段1保存的数据可以重复,而字段2和字段3保存的时候数据不可以重复,如果有重复的提示.但我不知道怎么写了,谢谢.急,在线等.
...全文
151 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
guyehanxinlei 2007-09-19
  • 打赏
  • 举报
回复
用复合索引也可以实现,不过有点被动
guyehanxinlei 2007-09-19
  • 打赏
  • 举报
回复
在插入数据之前到数据库中查询一下,如果存在字段二与字段三相同的情况,给出重复提示,插入终止,否则进行。
Lady_eric 2007-09-19
  • 打赏
  • 举报
回复
你可以捕获错误信息,然后自己制定一个msgbox,用于提醒自己所捕获的详细错误信息,然后再决定要不要录入文本中的数据.这个在VB帮助里有的,或者在VB书里查找,一般的VB书里都有捕获错误信息的详细说明.
dingyanwei 2007-09-17
  • 打赏
  • 举报
回复
toury(理上网来) 的方法是首选

在数据库中将字段2和字段3设为 无重复索引值,然后捕获重复的错误信息
好帅的一条鱼 2007-09-17
  • 打赏
  • 举报
回复
.Fields("字段2") = Text2.Text
你更新的時候在寫個查詢語句 查詢字段2
如果重復就 提示 不重復才執行.Fields("字段2") = Text2.Text。。。。。
我也很菜,不知道方法好不好使
toury 2007-09-17
  • 打赏
  • 举报
回复
1.在数据库中将字段2和字段3设为 无重复索引值;
2.在程序中写库前做错误陷阱 :
err.clear
on error goto err_handle

'rs操作......
'.......


exit sub
err_handle:
debug.print: err.number & "/" & err.description
if err.number=???? then '错误号你自己查一下
msgbox ".....",48,"字段重复提示"
end if
好帅的一条鱼 2007-09-17
  • 打赏
  • 举报
回复
那你保存的時候 看而已在遍歷一下 字段2和字段3,重復就提示一下,,,,

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧