【发布时间】:2015-07-27 08:04:28
【问题描述】:
我有一个将我的 vb.net 项目链接到一个唯一的 SQL 数据库,该数据库包含一个预定义的电子邮件地址列表。我的 vb 表单包含一个“名字”、“姓氏”和“电子邮件”文本框。
如何编程 vb.net 以在数据库中的“电子邮件”文本框中定位文本,并将 firstname 和 lastname 文本框值添加到与定位的电子邮件字段相同的行中的相应列中? (填补空白)
到目前为止我的代码:
' Initiate SQL Connection for db4free.net on port: 3306
MySqlConnection = New MySqlConnection
MySqlConnection.ConnectionString = "server=db4free.net; Port=3306; user id=username; password=password; database=databasename"
Try
MySqlConnection.Open()
Catch ex As Exception
MsgBox("The server could not be reached, check that you have internet connectivity and try again.", MsgBoxStyle.Critical, "Connection Error")
End Try
--- SQL DATABASE CONNECTION --- '
Dim Myadaptor As New MySqlDataAdapter
Dim sqlquery = "SELECT * FROM registration WHERE email='" & emailTextBox.Text & "';"
Dim command As New MySqlCommand
command.Connection = MySqlConnection
command.CommandText = sqlquery
Myadaptor.SelectCommand = command
Dim Mydata As MySqlDataReader
Mydata = command.ExecuteReader
' SQL Entry Validation
If Mydata.HasRows = 0 Then
MsgBox("Please enter a valid E-Mail address", MsgBoxStyle.Critical, "Invalid Details")
Else
--- THE ANSWER TO MY QUESTION (write firstname and lastname into row based on email) ---
提前谢谢你,(我才刚开始学习 SQL)。
【问题讨论】:
-
那么您想用新的名字和姓氏值更新数据库吗?
-
正如您刚刚开始学习 - 不要将字符串组合在一起,学习使用客户端传递的值的参数以避免 SQL 注入漏洞。跨度>
-
@DanielWaghorn 是的,我想在“电子邮件”文本框中输入一个电子邮件地址,然后在其他两个文本框中输入一些随机的名字和姓氏,最后单击一个在数据库中搜索该电子邮件的按钮,然后将文本框值添加到 firstname 和 lastname 列中找到的电子邮件地址所在的同一行。