Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

getrs(string)是个什么函数?

殷小宝  发表于:2010-04-16 16:56:49  
复制

在<<数据库原理与应用(Access)>>(作者张巍、曹起武等)一书中第239页中有这样一段代码:
Private Sub Text0_LostFocus()
Dim str As String
Dim jg As New ADODB.Recordset
Sr = Trim(Me.Text0)
If  Len(Me.Text0) > 2 Then         ‘长度是否大于2个字符,如果大于,提示。
MsgBox ("图书分类号不能超过两个字母")
Me.Text0 = ""
End If
If IsNull(Me.Text0) Then    ‘判断文本框中是否输入数据,如果没有,提示输入。
MsgBox ("请输入分类号")
End If
str = "select * from 图书类别 where flh='" & Sr & "'"
Set jg = getrs(str)
If Not jg.EOF Then   ‘判断图书类别表中有没有与输入内容相同的记录
DoCmd.Beep
MsgBox ("图书类别不能重复,该分类号已经存在!")
End If
Set jg = Nothing
End Sub
而书上从没定义函数getrs()这个函数,在网上查了一下,也没有这个函数,请问各位大师,有这个函数吗?如果有,这个函数该怎么应用呢

 

Top
煮江品茶 发表于:2010-04-16 19:09:49
是不是自定义函数?

王樵民 发表于:2010-07-14 09:36:33

该函数为自定义的函数,如果没有该函数,可做以下变通

 

Private Sub Text0_LostFocus()
Dim str As String

Dim dbs As Database  '定义引用数据库的变量。
Dim jg As New ADODB.Recordset
Sr = Trim(Me.Text0)
If  Len(Me.Text0) > 2 Then         ‘长度是否大于2个字符,如果大于,提示。
MsgBox ("图书分类号不能超过两个字母")
Me.Text0 = ""
End If
If IsNull(Me.Text0) Then    ‘判断文本框中是否输入数据,如果没有,提示输入。
MsgBox ("请输入分类号")
End If

Set dbs = CurrentDb()
str = "select * from 图书类别 where flh='" & Sr & "'"

'Set jg = getrs(str) 原语句

Set jg = dbs.OpenRecordset(str) '新语句
If Not jg.EOF Then   ‘判断图书类别表中有没有与输入内容相同的记录
DoCmd.Beep
MsgBox ("图书类别不能重复,该分类号已经存在!")
End If
Set jg = Nothing
End Sub



殷小宝  发表于:2010-08-02 15:09:05

这个函数我在《Access VBA数据库高效开发范例应用(作者陈可欣)中看到了这个函数,这个函数的确是自定义函数,在第309页中就有这个函数的定义。令人气愤的是张巍、曹起武等人不负责任,不写在书上,使人到处问人,自己也试着定义了,只差一步,功亏一溃.张巍等人完全是为了赚人,不把问题说清楚,好让人参加他的增训班.这样的人与骗子没有什么两样,可惜的是我在这上面花了不少的时间.



总记录:3篇  页次:1/1 9 1 :