实现这个简单功能应该用什么对象?
一个页面上有一个输入框,3个Label.一个查询按钮。
我想实现在输入框中输入记录ID,点查询。3个Label显示相应记录值。
代码如下:
Imports System.Data
Imports System.Data.SqlClient
Partial Class _Default
Inherits System.Web.UI.Page
Dim conn As New SqlClient.SqlConnection
Dim comm As New SqlClient.SqlCommand
Dim dataread As SqlClient.SqlDataReader
Dim STR_conn = System.Configuration.ConfigurationManager.ConnectionStrings( "tzsb_jyConnectionString ").ToString()
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
conn = New SqlClient.SqlConnection(STR_conn)
End Sub
Protected Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click
conn.Open()
comm = New SqlClient.SqlCommand( "select 使用证编号,设备名称,使用单位 from T_SBXX_JYXX_NBTJZX WHERE SBID like '% " & TextBox2.Text & "% ' ", conn)
dataread = comm.ExecuteReader()
Label1.Text = dataread.Item( "使用证编号 ")
Label2.Text = dataread.Item( "设备名称 ")
Label3.Text = dataread.Item( "使用单位 ")
End Sub
End Class
(数据库中记录ID是唯一的,就是说查询出的记录只有一条的。)
运行後提示:Label1.Text = dataread.Item( "使用证编号 ")出错!
错误提示为:在没有任何数据时进行无效的读取尝试。
我想是不是这里不能用DataReader 啊?
大家 说我该怎么样实现这个简单的 功能啊 ?
------解决方案--------------------数据读取器(dataread)默认是在所有数据之前,必须先Read一下才能到第一行
------解决方案--------------------1.
当然可以使用 DataReader
2.
运行後提示:Label1.Text = dataread.Item( "使用证编号 ")出错!
________________
使用 DataReader 读取数据钱,请先调用其 Read 方法
dataread = comm.ExecuteReader()
Label1.Text = dataread.Item( "使用证编号 ")
> > > >
dataread = comm.ExecuteReader()
if dataread.read() = true then
Label1.Text = dataread.Item( "使用证编号 ")
Label2.Text = dataread.Item( "设备名称 ")
Label3.Text = dataread.Item( "使用单位 ")
end if
3.
(数据库中记录ID是唯一的,就是说查询出的记录只有一条的。)
_____________________________
既然是 ID,条件语句请不要使用 LIKE,LIKE 用于模糊查询,
comm = New SqlClient.SqlCommand( "select 使用证编号,设备名称,使用单位 from T_SBXX_JYXX_NBTJZX WHERE SBID like '% " & TextBox2.Text & "% ' ", conn)
> > >
comm = New SqlClient.SqlCommand( "select 使用证编号,设备名称,使用单位 from T_SBXX_JYXX_