Office中国论坛/Access中国论坛

标题: SQL语法问题 [打印本页]

作者: zyz218    时间: 2006-7-18 19:22
标题: SQL语法问题
sql = "update IQC_Check CAR set Check=true where Ratio>& Me.Text3  and CheckTotal>& Me.Text8 and YearZhou='" & Me.Text7 & "'"


以上中:Me.Text3为Single,Me.Text8 为long ,Me.Text7 为String,现在只知Me.Text7 的表示方式是没问题的,其它二个数值型的不知怎样表示才是正确的??
作者: andymark    时间: 2006-7-18 19:41
try:

sql = "update IQC_Check CAR set Check=true where Ratio > " & Me.Text3 & " and CheckTotal> " & Me.Text8 & " and YearZhou='" & Me.Text7 & "'"

作者: zyz218    时间: 2006-7-18 19:45
Ratio > " & Me.Text3 & " and CheckTotal> " & Me.Text8 & "

有问题兄弟
作者: andymark    时间: 2006-7-18 21:18
sql = "UPDATE IQC_Check SET IQC_Check.[Check] = True WHERE ((IQC_Check.Ratio> " & Me.Text3 & ") AND ((IQC_Check.CheckTotal)>" & Me.Text8 & ") AND ((IQC_Check.YearZhou)='" & Me.Text7 & "'));"
作者: zyz218    时间: 2006-7-18 21:25
提示:update语法错误
作者: andymark    时间: 2006-7-18 21:26
我这里没问题,把例子传上来
作者: zyz218    时间: 2006-7-18 21:37
方便的话早上传了,我再试试,谢谢你,!!!
作者: andymark    时间: 2006-7-18 21:42
这是按你的所说建的例子

[attach]19102[/attach]

作者: zyz218    时间: 2006-7-18 21:57
谢谢你的例子,确实没错,但我要更新的是个查询名叫:IQC_Check CAR

sql = "UPDATE IQC_Check CAR SET IQC_Check CAR.[Check] = True WHERE ((IQC_Check CAR.Ratio)> " & Me.Text3 & ") AND ((IQC_Check CAR.CheckTotal)>" & Me.Text8 & ") AND ((IQC_Check CAR.YearZhou)='" & Me.Text7 & "'));"

作者: andymark    时间: 2006-7-18 22:03
IQC_Check CAR 查询名有空格用[]括起来试试
作者: zyz218    时间: 2006-7-18 22:13
Private Sub Text7_AfterUpdate()
Dim sql As String
Dim conn As New ADODB.Connection
Set conn = CurrentProject.Connection
'查询是否发行过
    If Not IsNull(DLookup("Checked", "IQC_Check", "YearZhou='" & Me.Text7 & "' and Checked=true")) Then '采用andymark兄给予的方法,在此感谢!
        MsgBox "已发行过,请不要重复发行。若需重复操作,可向管理员寻求技术支持!"
        Exit Sub
    End If
'提取要发行的记录
sql = "UPDATE [IQC_Check CAR] SET [IQC_Check CAR].[Check] = True WHERE (([IQC_Check CAR].Ratio)> " & Me.Text3 & ") AND (([IQC_Check CAR].CheckTotal)>" & Me.Text8 & ") AND (([IQC_Check CAR].YearZhou)='" & Me.Text7 & "'));"
conn.Execute sql
Set conn = Nothing
End Sub

请看一下那里写错了?

[此贴子已经被作者于2006-7-18 14:13:40编辑过]


作者: andymark    时间: 2006-7-18 22:39
有什么提示
作者: zyz218    时间: 2006-7-18 22:49
[attach]19104[/attach]
<IMG>
作者: andymark    时间: 2006-7-18 23:16
在(([IQC_Check CAR].Ratio)> " & Me.Text3 & ") 多了一个括号或者在左边再加多一个



sql = "UPDATE [IQC_Check CAR] SET [IQC_Check CAR].[Check] = True WHERE (([IQC_Check CAR].Ratio> " & Me.Text3 & ") AND (([IQC_Check CAR].CheckTotal)>" & Me.Text8 & ") AND (([IQC_Check CAR].YearZhou)='" & Me.Text7 & "'));"

作者: zyz218    时间: 2006-7-18 23:45
问题解决了,正如你所说,多谢了!!!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3