C# 如何将参数传递给SQL查询?

C# 如何将参数传递给SQL查询?,c#,sql,oledb,C#,Sql,Oledb,*调用C#中的查询:*** 我没看见接线员 查询: SELECT BO.MISHPAHA AS MISHPAHA, BO.PRATI AS PRATI, TM.LongShem AS LongShem, TM.SHEM AS SHEM,** TM.semel AS semel, TM.OT AS OT, (select SUM(KOLOT) from TOZAOTR where M

*调用C#中的查询:***

我没看见接线员 查询:

SELECT BO.MISHPAHA AS MISHPAHA,
       BO.PRATI AS PRATI,
       TM.LongShem AS LongShem,
       TM.SHEM AS SHEM,**
       TM.semel AS semel,
       TM.OT AS OT,
       (select SUM(KOLOT)
        from TOZAOTR
        where MUAMAD=BO.ZEUT AND kalpi =@kalpiNum) AS Total,
       (select sum(kolot)
        FROM TOZAOTR
        WHERE kalpi =@kalpiNum) AS SuMall,
       ROUND((Total/(SuMall+0.00001))*100,2) AS pre
FROM (MUAMADIM AS MU LEFT JOIN BOHARIM AS BO ON MU.ZEUT=BO.ZEUT)
LEFT JOIN TMIFLAGA AS TM ON MU.MIFLAGA=TM.SEMEL;

你的问题是什么?你想要什么?您在调试器中看到“查询”了吗?还是希望进行此查询?我想您应该通过删除参数名称中的“@”来更改此行:OleDbParameter parameter=new OleDbParameter(“kalpiNum”,s);非常感谢。这就是答案您使用的是什么数据库和提供程序?它可能不支持命名参数。
SELECT BO.MISHPAHA AS MISHPAHA,
       BO.PRATI AS PRATI,
       TM.LongShem AS LongShem,
       TM.SHEM AS SHEM,**
       TM.semel AS semel,
       TM.OT AS OT,
       (select SUM(KOLOT)
        from TOZAOTR
        where MUAMAD=BO.ZEUT AND kalpi =@kalpiNum) AS Total,
       (select sum(kolot)
        FROM TOZAOTR
        WHERE kalpi =@kalpiNum) AS SuMall,
       ROUND((Total/(SuMall+0.00001))*100,2) AS pre
FROM (MUAMADIM AS MU LEFT JOIN BOHARIM AS BO ON MU.ZEUT=BO.ZEUT)
LEFT JOIN TMIFLAGA AS TM ON MU.MIFLAGA=TM.SEMEL;