小弟昨日写了一段vb代码,是用ODBC连接sql的,其中有写了这样一段代码,但没有达到最终目的,请大家帮忙看看:
Private Sub Command7_Click()
Frame1.Enabled = True
If Text14.Text = "" Then
MsgBox "请先填写工资最后发放日期!!!"
End If
txtsql = "SELECT hr_hi_person.cPsn_Num as rybm, hr_hi_person.cPsn_Name as ry, hr_hi_person.cDept_num as bmbm, Department.cDepName as bm, WA_GZData.F_8 as jx FROM Department  "
txtsql = txtsql + "INNER JOIN (hr_hi_person INNER JOIN WA_GZData ON hr_hi_person.cPsn_Num=WA_GZData.cPsn_Num) ON Department.cDepCode=hr_hi_person.cDept_num  "
txtsql = txtsql + "where hr_hi_person.cPsn_Num='" + Left((Combo2.Text), 4) + "' and WA_GZData.iMonth='" + Mid((Text14.Text), 6, 2) + "'"
txtsql = txtsql + " ORDER BY hr_hi_person.cPsn_Num"
MsgBox txtsql
Set mrc = ExecuteSQL(txtSql1, msgtext)
Text17.Text = mrc!ry
Text2.Text = mrc!bm
Text5.Text = mrc!jx
End Sub最后的结果是只有text17.text返回了值,也就是mrc!ry返回了,但到text2之后就不行了,提示错误"3265",未找到对象,但这个关系三中表的复合查询在sql的查询分析器中可以得到想要的结果,到了vb中就不行了,请大家指点迷津~~~