如果是ASP.net,请检查SQL数据库中是否存在电子邮件地址
我试图检查SQL数据库,看看注册用户输入的电子邮件是否已经存在。如果是,那么我希望弹出一条错误消息,说明它已注册。如果没有,那么他们应该已经成功注册了。这是我表格中唯一需要的支票。问题部分在下面用*表示。请帮忙如果是ASP.net,请检查SQL数据库中是否存在电子邮件地址,asp.net,sql,sql-server,vb.net,Asp.net,Sql,Sql Server,Vb.net,我试图检查SQL数据库,看看注册用户输入的电子邮件是否已经存在。如果是,那么我希望弹出一条错误消息,说明它已注册。如果没有,那么他们应该已经成功注册了。这是我表格中唯一需要的支票。问题部分在下面用*表示。请帮忙 导入System.Data.SqlClient 导入System.Data.Sql 导入System.Data.SqlTypes 导入系统数据 导入系统配置 导入System.Net.Mail 导入系统.Net 导入系统.Web 导入System.Web.UI 导入System.Web.
导入System.Data.SqlClient
导入System.Data.Sql
导入System.Data.SqlTypes
导入系统数据
导入系统配置
导入System.Net.Mail
导入系统.Net
导入系统.Web
导入System.Web.UI
导入System.Web.UI.WebControl
导入System.Web.UI.WebControl.WebParts
导入System.Web.UI.HTMLControl
公共类WebForm1
继承System.Web.UI.Page
作为对象的模糊布尔卡尔
受保护的子btnSubmit\u Click(发件人作为对象,e作为事件参数)处理btnSubmit。单击
'声明数据库输入变量
Dim userId为整数=0
Dim firstName As String=txtFirstName.Text
Dim lastName As String=txtLastName.Text
将hometown1标注为字符串=txtHometown1.Text
Dim state1为字符串=txtState1.Text
尺寸zip1为String=txtZipCode1.Text
将hometown2标注为字符串=txtHometown2.Text
Dim state2作为字符串=txtState2.Text
尺寸zip2为String=txtZipCode2.Text
Dim phoneNum作为字符串=txtPhoneNumber.Text
Dim emailAddress As String=txtEmailAddress.Text
Dim密码为String=txtPassword.Text
Dim boolCar作为布尔值=False
Dim boolUmary As Boolean=False
如果radYesNo.SelectedIndex=0,则
布尔卡尔=真
其他的
布尔卡尔=假
如果结束
如果txtEmailAddress.Text.包含(“@umary.edu”),则
boolUmary=True
其他的
boolUmary=False
如果结束
如果boolUmary=True且txtPassword.Text=txtRetypePassword.Text,则
如果(IsPostBack)那么
'这将创建连接。它假定您的SQL Express数据库文件位于App_数据目录中
将sqlConn设置为新的SqlConnection(“Server=CISWEB\UMCISSQL2008;Database=StudentGov;UId=sa;Password=Password1;”)
将sqlCmd设置为新的SqlCommand“创建命令对象”
Dim_SqlDataReader As System.Data.SqlClient.SqlDataReader=无
sqlCmd.Connection=sqlConn'定义命令对象的连接
'使用参数化查询定义命令
sqlCmd.CommandText=“将值(@txtFirstName、@txtLastName、@txtHometown1、@txtState1、@txtZipCode1、@txtHometown2、@txtState2、@txtZipCode2、@txtPhoneNumber、@txtMailAddress、@txtPassword、@RadYesNo)插入注册表数据(FirstName、LastName、Hometown1、Hometown1、State1、State1、txtZipCode1、@txtHometown2、@txtState2、@txtPhoneNumber)”
'定义SQL参数
sqlCmd.Parameters.AddWithValue(“@txtFirstName”,txtFirstName.Text)
sqlCmd.Parameters.AddWithValue(“@txtLastName”,txtLastName.Text)
sqlCmd.Parameters.AddWithValue(“@txtHometown1”,txtHometown1.Text)
sqlCmd.Parameters.AddWithValue(“@txtState1”,txtState1.Text)
sqlCmd.Parameters.AddWithValue(“@txtZipCode1”,txtZipCode1.Text)
sqlCmd.Parameters.AddWithValue(“@txtHometown2”,txtHometown2.Text)
sqlCmd.Parameters.AddWithValue(“@txtState2”,txtState2.Text)
sqlCmd.Parameters.AddWithValue(“@txtZipCode2”,txtZipCode2.Text)
sqlCmd.Parameters.AddWithValue(“@txtPhoneNumber”,txtPhoneNumber.Text)
sqlCmd.Parameters.AddWithValue(“@txtEmailAddress”,txtEmailAddress.Text)
sqlCmd.Parameters.AddWithValue(“@txtPassword”,txtPassword.Text)
sqlCmd.Parameters.AddWithValue(“@RadYesNo”,boolCar)
sqlConn.Open()'打开连接
sqlCmd.ExecuteNonQuery()'执行数据插入
*****Dim消息为String=String.Empty
//“不知道这里发生了什么事
//'需要发生什么-如果UMaryEmail值为null,则message=注册成功+SendActivationEmail(userId)
//'ELSE(如果UMaryEmail!=ISNULL)message=提供的电子邮件地址已在使用中
sqlCmd.CommandText=“选择值=LEN(ISNULL(UMaryEmail,”)=0时的大小写,然后“+txtEmailAddress.ToString+”,LEN(ISNULL(UMaryEmail,”)!=0时的大小写,然后UMaryEmail从RegisteredUsers结束;”
选择Case userId
案例-10
sqlCmd.CommandText=“从RegisteredUsers中选择RegisteredUsers.UMaryEmail,其中(RegisteredUsers.UMaryEmail='“+txtEmailAddress.ToString+”);”
message=“提供的电子邮件地址已被使用。”
退出选择
其他情况
message=“注册成功。已向提供的电子邮件发送激活电子邮件。”
SendActivationEmail(用户ID)
重定向(“ActivateAccount.aspx”)
退出选择
结束选择*****
ClientScript.RegisterStartupScript([GetType](),“alert”,(Convert.ToString(“alert(”)&消息)+“;”,True)
sqlConn.Close()'关闭连接
ElseIf txtPassword.Text txtRetypePassword.Text然后
MsgBox(“密码不匹配!”)
ElseIf boolUmary=则为False
MsgBox(“请使用您的电子邮件地址!”)
如果结束
如果结束
端接头
私有子SendActivationEmail(用户ID为整数)
Dim sqlString As String=“Server=CISWEB\UMCISSQL2008;Database=StudentGov;UId=sa;Password=Password1;”
Dim ActivationCode As String=Guid.NewGuid().ToString()
使用con作为新的SqlConnection(sqlString)
使用sqlCmd作为新的SqlCommand(“更新注册表用户设置UserId=”+UserId.ToString+”,ActivationCode=“+ActivationCode.ToString+”,其中UMaryEmail=”“+txtEmailAddress.Text+”;”)
Private Sub btnSubmit_Click(sender As Object, e As EventArgs) Handles btnSubmit.Click
If txtEmailAddress.Text.Trim.EndsWith("@umary.edu") Or txtPassword.Text.Trim = txtRetypePassword.Text.Trim Then
Dim con As New SqlConnection
Dim cmdEmail As New SqlCommand
Dim cmdRegistration As New SqlCommand
Dim EmailCount As Integer = 0
Try
con.ConnectionString = "Data Source=SERVERNAME;Initial Catalog=StudentGov;User ID=sa;Password=Password1"
con.Open()
cmdEmail = New SqlCommand("SELECT COUNT(UMaryEmail) As EmailCount FROM RegisteredUsers WHERE UMaryEmail='" & txtEmailAddress.Text.Trim & "'", con)
EmailCount = cmdEmail.ExecuteScalar()
If EmailCount <> 0 Then
' Declare database input variables '
Dim userId As Integer = 0
Dim firstName As String = txtFirstName.Text
Dim lastName As String = txtLastName.Text
Dim hometown1 As String = txtHometown1.Text
Dim state1 As String = txtState1.Text
Dim zip1 As String = txtZipCode1.Text
Dim hometown2 As String = txtHometown2.Text
Dim state2 As String = txtState2.Text
Dim zip2 As String = txtZipCode2.Text
Dim phoneNum As String = txtPhoneNumber.Text
Dim emailAddress As String = txtEmailAddress.Text
Dim password As String = txtPassword.Text
Dim boolCar As Boolean = False
Dim boolUmary As Boolean = False
If radYesNo.SelectedIndex = 0 Then
boolCar = True
Else
boolCar = False
End If
' Define the command using parameterized query '
cmdRegistration = New SqlCommand("INSERT INTO RegisteredUsers(FirstName, LastName, Hometown1, State1, ZIP1, Hometown2, State2, ZIP2, PhoneNum, UMaryEmail, Password, Car) VALUES (@txtFirstName, @txtLastName, @txtHometown1, @txtState1, @txtZipCode1, @txtHometown2, @txtState2, @txtZipCode2, @txtPhoneNumber, @txtEmailAddress, @txtPassword, @RadYesNo)", con)
' Define the SQL parameter '
cmdRegistration.Parameters.AddWithValue("@txtFirstName", txtFirstName.Text)
cmdRegistration.Parameters.AddWithValue("@txtLastName", txtLastName.Text)
cmdRegistration.Parameters.AddWithValue("@txtHometown1", txtHometown1.Text)
cmdRegistration.Parameters.AddWithValue("@txtState1", txtState1.Text)
cmdRegistration.Parameters.AddWithValue("@txtZipCode1", txtZipCode1.Text)
cmdRegistration.Parameters.AddWithValue("@txtHometown2", txtHometown2.Text)
cmdRegistration.Parameters.AddWithValue("@txtState2", txtState2.Text)
cmdRegistration.Parameters.AddWithValue("@txtZipCode2", txtZipCode2.Text)
cmdRegistration.Parameters.AddWithValue("@txtPhoneNumber", txtPhoneNumber.Text)
cmdRegistration.Parameters.AddWithValue("@txtEmailAddress", txtEmailAddress.Text)
cmdRegistration.Parameters.AddWithValue("@txtPassword", txtPassword.Text)
cmdRegistration.Parameters.AddWithValue("@RadYesNo", boolCar)
cmdRegistration.ExecuteNonQuery()
Else
' Duplicate Email Exist Error Message '
End If
Catch ex AS Exception
' Error Executing One Of The SQL Statements '
Finally
con.close()
End Try
Else
' Throw Error Message '
End If
End Sub