有人请帮帮我!我在VB有一个学生项目,我真的很困惑 [英] Somebody please help me! I have a student project in VB and i am really confused

查看:70
本文介绍了有人请帮帮我!我在VB有一个学生项目,我真的很困惑的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两种形式:表单1有一个文本框,我想在其中输入一个Ok按钮输入学生ID号。在表单1中输入学生ID号并单击确定后,我想使用OleDbdatareader从数据库中获取有关加载到表单2文本框中的唯一学生的记录。我怎样才能实现这一目标?请帮忙!对不起,这是我在Ok按钮点击事件下的内容:



Dim cnn As New OleDbConnection

cnn.ConnectionString =我的连接string ...

Dim cmd AsNew OleDbCommand

cmd.CommandText =SELECT Id,Fname,Lname FROM student

cmd.Connection = cnn

Dim sdr作为OleDbDataReader

sdr = cmd.ExecuteReader



如果sdr.HasRows那么



dr.Read()



表2.Load()



txt_Id.text = dr.Item(Id)

txt_Fname.text = dr.Item(Fname)

txt_Lname.text = dr.Item(Lname)





sdr.Close()



结束如果

cnn.Close()

解决方案

尝试这样的事情:

 < span class =code-keyword>使用 con 作为  SqlConnection(strConnect)
con.Open()
使用 cmd 作为 SqlCommand( SELECT myColumn1,MyColumn2 FROM myTable WHERE ID = @ ID,con)
cmd.Parameters。 AddWithValue( @ ID,studentId)
使用 reader As SqlDataReader = cmd.ExecuteReader()
读者。 Read()
Dim col1 As Integer = CInt (读者( myColumn1))
Dim col2 As 字符串 = D. irectCast (reader( myColumn2),字符串
' 并将值放在表单上。
结束
结束 使用
结束 使用
结束 使用


< blockquote>

  Dim  connetionString  As  字符串 
Dim cnn 作为 SqlConnection
Dim cmd As SqlCommand
Dim sql As String
Dim reader As SqlDataReader

connetionString = 数据源= ServerName;初始目录= DatabaseName;用户ID = UserName;密码=密码
sql = 从myTable中选择* WHERE ID =& Textbox1.Text&
cnn = SqlConnection(connetionString)
尝试
cnn.Open()
cmd = SqlCommand(sql,cnn)
reader = cmd.ExecuteReader()
if reader.hasrows() then
while reader.Read()
dim frm2 as Form2
frm2.Textbox1.Text = reader( 0
frm2.Textbox2.Text = reader( 1 ' 等等
frm2.ShowDialog()' 或者你可以只需使用.Show()
结束
结束 如果
reader.Close()
cmd.Dispose()
cnn.Close()
Catch ex As Exception
MsgBox( 无法打开连接!
结束 尝试


I have two forms: form 1 have one textbox in which i want to enter student Id number with an Ok button. after entering student Id number in form 1 and click Ok, i want to get records from the database using OleDbdatareader about the only student loaded into the form 2 textboxes. How can i achieve this? please help! Sorry, Here is what i have under the Ok button click event:

Dim cnn As New OleDbConnection
cnn.ConnectionString = "my connection string..."
Dim cmd AsNew OleDbCommand
cmd.CommandText = "SELECT Id, Fname, Lname FROM student"
cmd.Connection = cnn
Dim sdr As OleDbDataReader
sdr = cmd.ExecuteReader

If sdr.HasRows Then

dr.Read()

Form 2.Load()

txt_Id.text = dr.Item("Id")
txt_Fname.text = dr.Item("Fname")
txt_Lname.text = dr.Item("Lname")


sdr.Close()

End If
cnn.Close()

解决方案

Try something like this:

Using con As New SqlConnection(strConnect)
	con.Open()
	Using cmd As New SqlCommand("SELECT myColumn1, MyColumn2 FROM myTable WHERE ID=@ID", con)
                cmd.Parameters.AddWithValue("@ID", studentId)
		Using reader As SqlDataReader = cmd.ExecuteReader()
			While reader.Read()
				Dim col1 As Integer = CInt(reader("myColumn1"))
				Dim col2 As String = DirectCast(reader("myColumn2"), String)
				' and put the values on your form.
			End While
		End Using
	End Using
End Using


Dim connetionString As String
        Dim cnn As SqlConnection
        Dim cmd As SqlCommand
        Dim sql As String
        Dim reader As SqlDataReader

        connetionString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password"
        sql = "Select *  from myTable WHERE ID=" & Textbox1.Text & ""
        cnn = New SqlConnection(connetionString)
        Try
            cnn.Open()
            cmd = New SqlCommand(sql, cnn)
            reader = cmd.ExecuteReader()
          if reader.hasrows() then
           While reader.Read()
               dim frm2 as Form2
               frm2.Textbox1.Text=reader(0)
               frm2.Textbox2.Text=reader(1) ' And so on
               frm2.ShowDialog() 'or you can just use .Show()
            End While
         End If
            reader.Close()
            cmd.Dispose()
            cnn.Close()
        Catch ex As Exception
            MsgBox("Can not open connection ! ")
        End Try


这篇关于有人请帮帮我!我在VB有一个学生项目,我真的很困惑的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆