这个很明显,根据提示可知是319行,语法错误基本是指sql语句,所以错误的是strSQL这个句子,即"select * from SG_Item WHERE strUser_ID = '"&m_strUser_ID&"'"而且是语法错误。那么来看看这个句子的=号附近,可以看出m_strUser_ID变量是上面得来的,那么这个变量是什么类型呢,可以告诉你,如果没错的话,根据提示这里它应该是个Int型吧,而这里你把它当成字符串类型写在句子里了。所以会报出这样的错误。正确应该改为"select * from SG_Item WHERE strUser_ID = "&m_strUser_ID或则在上面把m_strUser_ID这个变量进行类型转换。转成字符串。 总的说就是sql语句里字符串要用‘’,而数字类型不需要‘’。