郁闷死了!!!.有没有高手帮我看看问题出在哪?

balckeagle 2005-03-22 04:52:46
Private Sub cmdfind_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdfind.Click
Dim blnisbn As Boolean, strisbn As String = txtisbn.Text
blnisbn = System.Text.RegularExpressions.Regex.IsMatch(strisbn, "^\d{1}-\d{3,5}-\d{3,5}-\d$")
If blnisbn = False Then
MsgBox("你输入的ISBN编号格式不正确.应为:x-xxxx-xxxx-x格式.x代表数字.中间部份可以是三位也可以是四位.五位数字")
txtISBN.Focus()
Else

Dim objcon As OleDb.OleDbConnection = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Library.mdb")
objcon.Open()
Dim strselect As String = "select * from Borrow_ReturnBack where ISBN ='" + strisbn + "'"
Dim datacmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(strselect, objcon)
Dim count As OleDb.OleDbDataReader = datacmd.ExecuteReader()
If count.HasRows = True Then
flag = 2
MsgBox("找到符合条件的借书记录")
count.NextResult()
Try


txtborrowid.Text = count.GetInt32(0) '''这里怎么取某一列的值填到一个文本框上去???


Catch ex As Exception
MsgBox(ex.ToString)
End Try


Else
MsgBox("找不到符合条件的借书记录,请确认你输入的ISBN编号是否正确。")
End If
objcon.Close()
End If

End Sub
...全文
169 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzzjaychung 2005-03-23
  • 打赏
  • 举报
回复
而且两种方法返回值都是OBJECT类型,,,,,
zzzjaychung 2005-03-23
  • 打赏
  • 举报
回复
昨天晚上有个会,就没上来了。
不过我这里count("列名")是可以执行的。
对于System.Data.OleDb.OleDbDataReader有两种写法:
1。 count(index as integer)
2。 count(name as string)

count.Item()也是同样两种写法:
1。 count.Item(index as integer)
2。 count.Item(name as string)
balckeagle 2005-03-22
  • 打赏
  • 举报
回复
问题已经解决了.


Dim count As OleDb.OleDbDataReader = datacmd.ExecuteReader()

count.read()
txtborrowid.Text=count.Item("列名")
balckeagle 2005-03-22
  • 打赏
  • 举报
回复
以前那个问题是解决了.

现在遇到是问题是: 怎么取到记录的某一列的值?(只确定查到一条记录)

上面的txtborrowid.Text=System.Convert.ToString(count("列名"))我试过了.

还是出现这样的错误:( 未处理的“System.InvalidOperationException”类型的异常出现在 system.data.dll 中。
其他信息: 不存在此行/列的数据。)

有没有帮帮忙?
zzzjaychung 2005-03-22
  • 打赏
  • 举报
回复
txtborrowid.Text=System.Convert.ToString(count("列名"))

刚刚那个问题看起来已经解决了呢。。。

恭喜。

你还可以看一下System.Convert,这里有很多转换函数,可以按你的需要进行转换。和VB有点不一样。
simonlee2003 2005-03-22
  • 打赏
  • 举报
回复
提示什么错误 ?
balckeagle 2005-03-22
  • 打赏
  • 举报
回复
要求: 我要把第一列的直付给一个文本框.

数据表的第一列是长整数.已经确定查到了唯一一条记录.getstring()和getvalue()方法也用过.

出现的提示如下:

未处理的“System.InvalidOperationException”类型的异常出现在 system.data.dll 中。

其他信息: 不存在此行/列的数据。

捕获异常也出现: 不存在此行/列的数据。


麻烦高人帮帮忙,小弟感激不尽!

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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