初学VB.NET,一个数据操作的小问题,大家帮我下,谢谢!!
nesle 2005-02-05 01:28:45 连接的是ACCESS数据库,我在作出库的时候想判断一下出货的数量和库存数量的大小,我的程序如下:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If aCon.State = ConnectionState.Closed Then aCon.Open()
Dim chukuSQL As String
Dim chukudate1 As String
Dim zongkudeleteSQL As String
Dim zongkuUpdateSQL As String
Dim sl As Integer
Dim zj As Double
Dim zongkuNum As Integer
Dim zongkunumSQL As String
Dim i As Integer
zongkunumSQL = "select num From zongku Where zongku.[id] = '" & TextBox1.Text & "' AND zongku.[name] = '" & TextBox2.Text & "' AND zongku.[class] = '" & TextBox3.Text & "' AND zongku.[size] = '" & TextBox4.Text & "'"
aCom.CommandText = zongkunumSQL
aCom.Connection = aCon
zongkuNum = aCom.ExecuteScalar()
zj = CDbl(TextBox7.Text)
chukudate1 = TextBox8.Text
chukudate1 &= "/"
chukudate1 &= ComboBox1.Text
chukudate1 &= "/"
chukudate1 &= ComboBox2.Text
'?于字符型字段要加?引号
chukuSQL = "Insert Into chuku([id],[name],[class],[size],[num],[price],[amount],[chukudate]) values ('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "','" & TextBox4.Text & "','" & TextBox5.Text & "','" & TextBox6.Text & "','" & TextBox7.Text & "','" & chukudate1 & "')"
zongkudeleteSQL = "delete From zongku Where zongku.[id] = '" & TextBox1.Text & "' AND zongku.[name] = '" & TextBox2.Text & "' AND zongku.[class] = '" & TextBox3.Text & "' AND zongku.[size] = '" & TextBox4.Text & "'"
zongkuUpdateSQL = "Update zongku Set num = num - " & TextBox5.Text & ", amount = amount - " & TextBox7.Text & " Where zongku.[id] = '" & TextBox1.Text & "' AND zongku.[name] = '" & TextBox2.Text & "' AND zongku.[class] = '" & TextBox3.Text & "' AND zongku.[size] = '" & TextBox4.Text & "'"
If DataCheck(TextBox1.Text, TextBox2.Text, TextBox3.Text, TextBox4.Text) = True Then
MsgBox("there is not this thing")
Else
Select Case i = zongkuNum - (Me.TextBox5.Text)
Case i < 0
MsgBox("the chukunum is wrong")
Case i = 0
aCom.CommandText = zongkudeleteSQL
aCom.Connection = aCon
aCom.ExecuteNonQuery()
aCom.CommandText = chukuSQL
aCom.Connection = aCon
aCom.ExecuteNonQuery()
MsgBox("successful")
Case i > 0
aCom.CommandText = zongkuUpdateSQL
aCom.Connection = aCon
aCom.ExecuteNonQuery()
aCom.CommandText = chukuSQL
aCom.Connection = aCon
aCom.ExecuteNonQuery()
MsgBox("successful")
End Select
End If
aCon.Close()
End Sub
我现在的问题是,数量正好的时候没问题,但是出库的数量小于库存的时候,他却一直返回 Case i < 0
MsgBox("the chukunum is wrong")
,不知道是不是这段返回的值有问题啊???
zongkunumSQL = "select num From zongku Where zongku.[id] = '" & TextBox1.Text & "' AND zongku.[name] = '" & TextBox2.Text & "' AND zongku.[class] = '" & TextBox3.Text & "' AND zongku.[size] = '" & TextBox4.Text & "'"
aCom.CommandText = zongkunumSQL
aCom.Connection = aCon
zongkuNum = aCom.ExecuteScalar()