vb中查询数据库的记录带有'时就会出问题

1、我在vb中查询数据库里某条记录如果带有'时就出错,因为select语句里也有',运行时提示:语法错误(操作符丢失),topic='China'sGrowingPain... 1、我在vb中查询数据库里某条记录如果带有'时就出错,因为select语句里也有',运行时提示:语法错误(操作符丢失),topic='China's Growing Pains'。这个问题怎么解决?
2、我用datagrid给数据库里添加记录时,记录时自动添加进去的。但是我想让它先跟数据库里的记录比较判断重复,是重复的就不给数据库添加。我现在能判断重复,但是它还是先把数据给添加了。我想先判断,要是不重复再添加应该怎么实现?
3.怎样做可以在用datagrid录入时响应tab键和上下左右键?
注:我的第一个问题解决了,其他两个问题还存在,请高手指点!我判断重复的代码如下:
Private Sub DataGrid1_BeforeUpdate(Cancel As Integer)
On Error Resume Next
If res.State Then res.Close
res.Open "select * from animal where animal=' " & DataGrid1.Columns(0).CellText(DataGrid1.Bookmark) & "'", cnn, 1, 3
If Not res.EOF Then
On Error Resume Next
If Err Then
MsgBox "此单词已有,请录入其他单词.", 48, "提示"
End If
'DataGrid1.AllowUpdate = False
Exit Sub

End If
End Sub
这个能判断重复,但是还是先把重复记录添加进去了。我想先判断,如果是重复记录就不添加。
展开
 我来答
cwa9958
2007-09-19 · TA获得超过1884个赞
知道大有可为答主
回答量:2504
采纳率:0%
帮助的人:2002万
展开全部
晕死,你的代码放上啊,别人才好帮你

首先在一个过程里只需要一个on error 语句。

你是用datagrid绑定的吗?
如果是绑定的,只要你输入数据,就会保存记录的,不管有没有重复,也容易出错。
不要在datagrid里添加记录,在里面修改记录还马马虎虎,最好也不要,很容易误操作的。
应该用 res.addnew 命令添加记录,要添加的数据输入在textbox控件里,用赋值语句赋值到每一个字段里,用res.update保存记录。

If MsgBox("确实要增加吗?", vbYesNo) = vbYes Then '确认是否增加记录
If Text1 = "" Then '判断序号不能为空
MsgBox "序号不能为空!请重新输入." '显示对话框
Text1.SetFocus '使text1获得焦点
Exit Sub '退出,重新输入数据
Else
'判断序号是否已经存在
res.Open "select * from animal where animal=' " & text1 & "'", cnn, 1, 3
If Not res.EOF Then
MsgBox "此单词已有,请录入其他单词.", 48, "提示"
exit sub
End If
'增加记录
res.AddNew '在数据库里插入一条空记录
res.Fields("序号") = Text1 '赋值
res.Fields("姓名") = Text2
...........
res.Update '保存记录

End If
pyjlqd
2007-09-18
知道答主
回答量:3
采纳率:0%
帮助的人:0
展开全部
你可以先用字段有效性规则里面设置下,让它不允许出现重复字段,这样它就先判断在添加了。不过你自己去看下嘛
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式