以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- update 更新出现没有修改的值时空值的情况 何解 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=162224) |
-- 作者:cnsjroom -- 发布时间:2021/4/9 10:55:00 -- update 更新出现没有修改的值时空值的情况 何解 出现没有修改的值 提交更新后 在后台该值为空 比如所在部门为政治部 如果不修改 只修改密码后 后台密码更新成功 所在部门为空值 有没有办法补正没有修改过的数据 不做更新 Dim e As RequestEventArgs = args(0) Dim wb As New weui Dim vals As String Dim cmd111 As New S QLCommand cmd111.C \'记得设置数据源名称 cmd111.CommandText = "Sel ect * From {用户表} " Dim dt As DataTable = cmd111.ExecuteReader Dim dr As DataRow=dt.Find("单位名称=\'" & e.Cookies("单位名称") & "\'and 姓名=\'" & e.Cookies("姓名") & "\'") If Functions.Execute("yanzheng",e) = 1 \'获取验证不能使用异步函数,必须等待并获取验证结果 If e.PostValues.Count = 0 Then wb.AddPageTitle("","ph1","账户信息修改"," ") wb.AddForm("","form1","password.htm") wb.AddTopTips("","toptip1","请输入单位名称和部门名称!") With wb.AddInputGroup("form1","ipg1","内容信息") If dr IsNot Nothing Then .AddInput("单位名称","单位名称*","text").Placeholder =dr("单位名称") .AddInput("所在部门","所在部门*","text").Placeholder =dr("所在部门") .AddInput("职务","职务*","text").Placeholder =dr("职务") .AddInput("姓名","姓名*","text").Placeholder =dr("姓名") .AddInput("电话","电话*","text").Placeholder =dr("电话") .AddInput("邮件","邮件*","text").Placeholder =dr("邮件") .AddInput("密码","密码*","text").Placeholder =dr("密码") End If End With With wb.AddButtonGroup("form1","btg1",False) .Add("btn1", "确定更新", "submit") .Add("btn2", "取消更新", "submit").FormAction = "default.htm" End With e.WriteString(wb.Build) \'生成网页 Else Dim cmd1 As New SQ LCommand cmd1.C cmd1.CommandText = "UPD ATE 用户表 S ET 所在部门=?,职务=?,电话=?,邮件=?,密码=? WHERE 单位名称=? and 姓名=? " cmd1.Parameters.Add("@所在部门", e.PostValues("所在部门")) cmd1.Parameters.Add("@职务", e.PostValues("职务")) cmd1.Parameters.Add("@电话", e.PostValues("电话")) cmd1.Parameters.Add("@邮件", e.PostValues("邮件")) cmd1.Parameters.Add("@密码", e.PostValues("密码")) cmd1.Parameters.Add("@单位名称", e.Cookies("单位名称")) cmd1.Parameters.Add("@姓名", e.Cookies("姓名")) cmd1.ExecuteNonQuery DataTables("用户表").LoadFilter = "" DataTables("用户表").Load() With wb.AddMsgPage("","msgpage","更新用户信息成功", "感谢支持,请点【登录系统】按钮登录使用,默认密码666666") \'生成成功提示页 .AddButton("btn11","登录系统","default.htm") End With e.WriteString(wb.Build) End If End If
[此贴子已经被作者于2021/4/9 10:55:54编辑过]
|
-- 作者:有点蓝 -- 发布时间:2021/4/9 11:01:00 -- Dim cmd1 As New SQ LCommand cmd1.C dim sql as string = "UPD ATE 用户表 S ET " if e.PostValues.ContainsKey("所在部门") sql = sql & "所在部门=?," cmd1.Parameters.Add("@所在部门", e.PostValues("所在部门")) end if if e.PostValues.ContainsKey("职务") sql = sql & "职务=?," cmd1.Parameters.Add("@职务", e.PostValues("职务")) end if …… sql = sql.trim(",") & " WHERE 单位名称=? and 姓名=? " cmd1.Parameters.Add("@单位名称", e.Cookies("单位名称")) cmd1.Parameters.Add("@姓名", e.Cookies("姓名")) cmd1.ExecuteNonQuery |
-- 作者:cnsjroom -- 发布时间:2021/4/9 11:20:00 -- 回复:(有点蓝)Dim cmd1 As New SQ LCommand ... Dim cmd1 As New SQLCommand cmd1.C Dim sql As String ="UPDA TE 用户表 S ET" If e.PostValues.ContainsKey("所在部门") sql = sql & "所在部门=?," cmd1.Parameters.Add("@所在部门", e.PostValues("所在部门")) End If If e.PostValues.ContainsKey("职务") sql = sql & "职务=?," cmd1.Parameters.Add("@职务", e.PostValues("职务")) End If If e.PostValues.ContainsKey("电话") sql = sql & "电话=?," cmd1.Parameters.Add("@电话", e.PostValues("电话")) End If If e.PostValues.ContainsKey("邮件") sql = sql & "邮件=?," cmd1.Parameters.Add("@邮件", e.PostValues("邮件")) End If If e.PostValues.ContainsKey("密码") sql = sql & "密码=?," cmd1.Parameters.Add("@密码", e.PostValues("密码")) End If sql = sql.trim(",") & " WHERE 单位名称=? and 姓名=? " cmd1.CommandText = sql cmd1.Parameters.Add("@单位名称", e.Cookies("单位名称")) cmd1.Parameters.Add("@姓名", e.Cookies("姓名")) cmd1.ExecuteNonQuery
|