C# 关键字LEFT附近的语法不正确
您好,我在C#中的此查询中出现语法错误,我不知道是什么原因造成的,当我在Microsoft SQL server 2012中查询此查询时,我只是按照预期获取数据,有人可以帮助我解决此问题:C# 关键字LEFT附近的语法不正确,c#,mysql,sql,join,C#,Mysql,Sql,Join,您好,我在C#中的此查询中出现语法错误,我不知道是什么原因造成的,当我在Microsoft SQL server 2012中查询此查询时,我只是按照预期获取数据,有人可以帮助我解决此问题: SqlConnection connectie = new SqlConnection("user id=;" + "password=;server=;" + "Trusted_Connection=false;" + "da
SqlConnection connectie = new SqlConnection("user id=;" +
"password=;server=;" +
"Trusted_Connection=false;" +
"database=; ");
SqlCommand statsDocenten = new SqlCommand("SELECT enquete_vraag as vraag,AVG(enquete_antwoord_radio) as gemiddelde_antwoord,docent,vak" +
"FROM ENQUETE_ANTWOORD " +
"LEFT JOIN KDV " +
"ON ENQUETE_ANTWOORD.kdv_ID = KDV.kdv_ID " +
"LEFT JOIN DOCENT " +
"ON KDV.docent_ID = DOCENT.docent_ID " +
"LEFT JOIN VAK " +
"ON KDV.vak_ID = VAK.vak_ID " +
"LEFT JOIN ENQUETE_VRAAG " +
"ON ENQUETE_ANTWOORD.enquete_vraag_ID = ENQUETE_VRAAG.enquete_vraag_ID " +
"WHERE DOCENT.docent_ID = " + docentid + " AND VAK.vak = " + vak + " AND ENQUETE_ANTWOORD.enquete_antwoord_radio != '' " +
"GROUP BY enquete_vraag,enquete_antwoord_radio,docent,vak", connectie);
我已经在“可能已经有你的答案的问题”区域检查了一堆问题,但我不知道哪个问题和答案会影响我的查询 您的第一行缺少
vak
和FROM
之间的空格
您肯定应该参数化您的查询(搜索它,您将找到“如何”和“为什么”)。此外,在字符串(称为a)之前使用@符号会更幸运,并且可以使用多行字符串,而无需连接一组字符串:
string sql = @"
SELECT enquete_vraag as vraag,AVG(enquete_antwoord_radio) as gemiddelde_antwoord,docent,vak
FROM ENQUETE_ANTWOORD
LEFT JOIN KDV ...etc...";
在第一行的
vak
后面需要一个空格。如果您只是打印出字符串,您自己就可以看到,因为它会显示,vakFROM
。在这种情况下,调试比在此处发布问题更快。这个问题似乎与主题无关,因为它只是缺少空格的问题。谢谢,我完全没有看到那个错误。
"...as gemiddelde_antwoord,docent,vak" + <----- you need a space here
"FROM ENQUETE_ANTWOORD " +
...
as gemiddelde_antwoord,docent,vakFROM ENQUETE_ANTWOORD