查询中抛出了赋值错误

时间:2010-11-27 08:33:51

标签: sql sql-server

我有这样的查询......

selectLeaveDetails = 
   "SELECT  UL.[PK_ID],UD.FIRST_NAME + ' ' + UD.LAST_NAME AS REQUESTBY," +
   "UL.[DATE_FROM] AS FROMDATE,UL.[DATE_TO] AS TODATE," +
   "UL.LEAVE_REQUEST_ON AS REQUESTON," +
   "REPLACE(UL.LEAVE_REQUEST_NOTES, '\n', '<br />') AS REQUESTNOTES," +
   "STATUS=CASE " +
   " WHEN UL.[LEAVE_STATUS] = '1' THEN 'ACTIVE' " +
   " WHEN UL.[LEAVE_STATUS] = '-1' THEN 'CANCELLED' " +
   " WHEN UL.[LEAVE_STATUS] = '2' THEN 'REPLACED' END," +
   "UL.LEAVE_RESPONSE_ON AS RESPONSEON," +
   "ULL.FIRST_NAME + ' ' + ULL.LAST_NAME AS RESPONSEBY," +
   "UL.[LEAVE_RESPONSE_NOTES] AS RESPONSENOTES,UL.FK_LEAVE_REQUESTER " +
   "FROM (M_USER_LEAVES UL " +
   "INNER JOIN M_LEADERLED MLL ON MLL.LED_ID = MUD.PK_ID WHERE MLL.LEADER_ID = '" + Session["UserID"].ToString() ****" +****
   "LEFT JOIN M_USER_DETAILS UD ON UD.PK_ID = UL.FK_LEAVE_REQUESTER) " +
   "LEFT JOIN M_USER_DETAILS ULL ON ULL.PK_ID = UL.FK_LEAVE_RESPONSE_BY " +
   " WHERE UL.DATE_FROM BETWEEN '01/01/" + cmbYearList.SelectedItem.Text + "' AND '12/31/" + cmbYearList.SelectedItem.Text + "'" +
   " AND UD.ACTIVE=1";

cmbYearList.SelectedItem.Text + "' AND '12/31/" + cmbYearList.SelectedItem.Text + "'"查询中...仅赋值,增量,减量错误

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

你的FROM子句在某种程度上被破坏了:

FROM (M_USER_LEAVES UL 
       INNER JOIN M_LEADERLED MLL ON MLL.LED_ID = MUD.PK_ID 
       WHERE MLL.LEADER_ID = 'XXXX" 
       LEFT JOIN M_USER_DETAILS UD ON UD.PK_ID = UL.FK_LEAVE_REQUESTER) 

你有一个INNER JOIN,然后是一个WHERE子句,然后是一个LEFT JOIN ....这看起来很奇怪.....你到底想要做什么? ??为什么需要将它放入子查询中 - 你不能只将INNER JOINLEFT JOIN这些表放入一个语句中并定义必要的WHERE约束吗?

此外,这里的WHERE条款会得到一个开头的单引号和一个结束的双引号 - 这是行不通的......

WHERE MLL.LEADER_ID = 'XXXX" 
                     ***   ***

您需要首先在SQL Server Management Studio中使用SQL查询 - 然后将其传输到C#代码中。