VB SQL 做的软件 程序错误
PrivateSubCommand1_Click()DimnAsIntegern=Val(Text2.Text)cn.Open"DSN=jyz;"Setcmd.Activ...
Private Sub Command1_Click()
Dim n As Integer
n = Val(Text2.Text)
cn.Open "DSN=jyz;"
Set cmd.ActiveConnection = cn
cmd.CommandText = "insert into 加油信息表(卡号,月计划量,加油量,日期) values ('" + Text1.Text + "','100','" + Text2.Text + "',getdate())"
cmd.CommandText = " update 油卡信息表 set 剩余油量 = 剩余油量 - 'n ' where 卡号 = '" & Text1.Text & "'"
cmd.CommandType = adCmdText
rst.Open cmd
MsgBox "加油成功"
End Sub
程序错误,
错误原因是 : 剩余油量= 剩余油量- ‘n’ 那个减号 有问题 。求解决 展开
Dim n As Integer
n = Val(Text2.Text)
cn.Open "DSN=jyz;"
Set cmd.ActiveConnection = cn
cmd.CommandText = "insert into 加油信息表(卡号,月计划量,加油量,日期) values ('" + Text1.Text + "','100','" + Text2.Text + "',getdate())"
cmd.CommandText = " update 油卡信息表 set 剩余油量 = 剩余油量 - 'n ' where 卡号 = '" & Text1.Text & "'"
cmd.CommandType = adCmdText
rst.Open cmd
MsgBox "加油成功"
End Sub
程序错误,
错误原因是 : 剩余油量= 剩余油量- ‘n’ 那个减号 有问题 。求解决 展开
3个回答
展开全部
改成:
= " update 油卡信息表 set 剩余油量 = 剩余油量 - '" & n & "' where 卡号 = '" & Text1.Text & "'"
或
= " update 油卡信息表 set 剩余油量 = 剩余油量 - " & n & " where 卡号 = '" & Text1.Text & "'"
我没有试过,数字好像是加要单引号的, 但是不能在双引号内部写'n', 这样的话,n会被当做一个字符, 无法参于运算
= " update 油卡信息表 set 剩余油量 = 剩余油量 - '" & n & "' where 卡号 = '" & Text1.Text & "'"
或
= " update 油卡信息表 set 剩余油量 = 剩余油量 - " & n & " where 卡号 = '" & Text1.Text & "'"
我没有试过,数字好像是加要单引号的, 但是不能在双引号内部写'n', 这样的话,n会被当做一个字符, 无法参于运算
追问
按你的改好了,不过貌似只执行了后一句,即 往油卡信息表中更新剩余油量 这一句。上面的那句向加油信息表中增加本次加油记录的 却没有执行。改怎么办
追答
因为你写了两个cmd.CommandText = "........."
而后面只写了一个RS.open cmd
要在每一个cmd.CommandText = "......."之后都执行RS.open cmd才可以
改成:
cmd.CommandText = "........."
rst.open cmd
rst.close
cmd.CommandText = "........."
rst.open cmd
下次用之前要先关闭的
展开全部
text2.text是加油量吧,应该将值转换成数值之后再运算,估计你数据库字段属性为数值吧
更多追问追答
追问
是的 ,改如何办,请把代码写下,小白一个,你这样说完我还是不知怎弄啊
追答
n = Val(trim(Text2.Text))
cmd.CommandText = "insert into 加油信息表(卡号,月计划量,加油量,日期) values ('" + Text1.Text + "',100,'" + Val(trim(Text2.Text))+ "',getdate())"
cmd.CommandText = " update 油卡信息表 set 剩余油量 = 剩余油量 -n where 卡号 = '" & Text1.Text & "'"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
问题是不是在 'n ' 啊,数字运算不加'' 吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询