⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 updatedata.aspx.vb

📁 《ASP.NET C#程序设计案例教程》
💻 VB
字号:
Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Data
Imports System.Data.OleDb

Public Class UpdateData: Inherits Page
	Public txtName,txtTel,txtEmail,txtIntro,txtUserPWD As TextBox
	Public lblId,message As Label

	'该过程根据传递过来的记录编号将该记录显示在下面的表单中
	Sub Page_load(Sender As Object, E As EventArgs)
		If Not IsPostBack Then 
			'下面利用DataReader对象读取当前记录
			Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("address.mdb"))
			Dim strSql As String="Select * From users Where id=" & Request.QueryString("id")     '注意id
			Dim cmd As New OleDbCommand(strSql, conn) 
			conn.Open()	
			Dim dr As OleDbDataReader = cmd.ExecuteReader()				           
			'下面读取当前记录,并显示在文本框中
			dr.Read()													
			txtName.Text=dr.Item("name")
			txtTel.Text=dr.Item("tel")
			txtEmail.Text=dr.Item("email").ToString						'因为该字段可能为空,需要加ToString
			txtIntro.Text=dr.Item("intro").ToString
			lblId.Text=Request.QueryString("id")						'将传过来的Id保存到一个隐藏标签中 
			conn.Close() 
		End If
	End Sub
	Sub Enter_Click(Sender As Object, E As EventArgs)
		If CheckPWD(lblId.Text,txtUserPWD.Text)=True Then
			'下面建立Connection对象,并利用含有参数的SQL语句更新数据库
			Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("address.mdb")) 
			Dim strSql="Update users Set name=@name,tel=@tel,email=@email,intro=@intro Where id=@id" 
			Dim cmd As New OleDbCommand(strSql, conn)
			'下面给参数赋值
			cmd.Parameters.Add(New OleDbParameter("@name",OleDbType.VarWChar,5))
			cmd.Parameters("@name").Value=txtName.Text
			cmd.Parameters.Add(New OleDbParameter("@tel",OleDbType.VarWChar,13))
			cmd.Parameters("@tel").Value=txtTel.Text
			'下面给@email赋值,如果客户没有输入,则赋NULL值
			cmd.Parameters.Add(New OleDbParameter("@email",OleDbType.VarWChar,50))
			If txtEmail.Text<>"" Then
				cmd.Parameters("@email").Value=txtEmail.Text
			Else
				cmd.Parameters("@email").Value=DBNull.Value						'赋值NULL
			End If
			'下面给@intro赋值,如果客户没有输入,则赋NULL值
			cmd.Parameters.Add(New OleDbParameter("@intro",OleDbType.VarWChar))
			If txtIntro.Text<>"" Then
				cmd.Parameters("@intro").Value=txtIntro.Text
			Else
				cmd.Parameters("@intro").Value=DBNull.Value						'赋值NULL
			End If		
			cmd.Parameters.Add(New OleDbParameter("@id",OleDbType.Integer))
			cmd.Parameters("@id").Value=lblId.Text								'从隐藏标签中获取Id值
			'执行更新操作,完成后重定向回首页
			conn.Open()
			cmd.ExecuteNonQuery()
			conn.Close()
			Response.Redirect("index.aspx")	
		Else
			message.Text="请输入正确的修改密码"
		End If
	End Sub
	'这个函数专门用来判断密码是否正确
	Function CheckPWD(id As Integer,UserPWD As String)
		Dim conn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("address.mdb"))										'建立Connection对象
		Dim strSql As String = "select UserPWD As total from users Where id=" & id
		Dim cmd As New OleDbCommand(strSql, conn)							'建立Command对象
		conn.Open
		If  UserPWD=cmd.ExecuteScalar() Then
			CheckPWD=True
		Else
			CheckPWD=False
		End If
		conn.Close
	End Function
End Class

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -