SQL.Format("SELECT WS_WORKLOG.SHEETNAME, JXD_USER.NAME, WS_WORKLOG.OPERATETYPE, \
WS_PATTERNINFO.PATTERNNAME, WS_WORKLOG.OPERATETIME, WS_WORKLOG.REMARK \
FROM WS_WORKLOG, JXD_USER, WS_PATTERNINFO, WS_SHEETINDEX \
WHERE JXD_USER.USERID = WS_WORKLOG.OPERATEUSER \
AND WS_WORKLOG.SHEETID = WS_SHEETINDEX.SHEETID \
AND WS_SHEETINDEX.PATTERNID = WS_PATTERNINFO.PATTERNID \
AND JXD_USER.NAME LIKE '%%s%' \
AND WS_PATTERNINFO.PATTERNNAME = '%s' \
AND WS_WORKLOG.OPERATETYPE = '%s' \
AND WS_WORKLOG.SHEETNAME LIKE '%%s%' \
AND WS_WORKLOG.OPERATETIME > '%s' \
AND WS_WORKLOG.OPERATETIME < '%s'" ,\
m_UserName, strSheetType, strOperateType, m_SheetName, strBeginTime, strEndTime);变量均为字符串。 急!请各位高手指点迷津!

解决方案 »

  1.   

    可以放到sqlserver的查询分析器上去执行试一下.
      

  2.   

    应该说这还是一个相当简单的SQL语句了
    大致是SELECT columns FROM tables WHERE condiction
      

  3.   

    format 的问题?   头疼
      

  4.   

    找到了,是Format里的%问题,你把Like '%%s%' 改为 like '%%%s%%'
    用%s来表示需要用来替换的字符串,用%%来表示要显示的%
      

  5.   

    AND JXD_USER.NAME LIKE '%%s%' \i think it's error, modify the '%%s%' to: '%%%s%%'.
      

  6.   

    AND WS_WORKLOG.SHEETNAME LIKE '%%s%' \
    '%%%s%%'