在SQL查询分析器中,我运行以下语句,但没有得到anny error:
string select = "SELECT " +
"aanvrager.werknemersnaam AS melder , hd_aanvragen.aanvraag_titel, " +
"hd_aanvragen.aanvraag_omschrijving, hd_aanvraag_fase.fase_datum, " +
"hd_melding_niveau_1.niveau_omschrijving AS 'Niveau 1', " +
"hd_melding_niveau_2.niveau_omschrijving AS 'Niveau 2', " +
"hd_aanvragen.outlook_id" +
"FROM hd_aanvragen " +
"INNER JOIN hd_meldingen ON hd_meldingen.melding_id = hd_aanvragen.melding_id " +
"INNER JOIN hd_melding_niveau_1 ON hd_melding_niveau_1.niveau1_id = hd_meldingen.niveau1_id " +
"INNER JOIN hd_melding_niveau_2 ON hd_melding_niveau_2.niveau2_id = hd_meldingen.niveau2_id " +
"INNER JOIN hd_aanvraag_fase ON hd_aanvraag_fase.aanvraag_id = hd_aanvragen.aanvraag_id " +
"INNER JOIN hd_statussen ON hd_statussen.status_id = hd_aanvraag_fase.status_id " +
"INNER JOIN hd_werknemers AS oplosser ON oplosser.werknemer_Id = hd_aanvraag_fase.werknemer_Id " +
"INNER JOIN hd_werknemers AS aanvrager ON aanvrager.werknemer_Id = hd_aanvragen.werknemer_Id " +
"WHERE hd_statussen.status_id = 16";但是如果我在这里运行这个select语句:
MyDataSource.SelectCommand = select;我得到这样的错误:关键字'INNER‘附近的语法不正确。
说明:当前web请求执行过程中发生未处理异常。请查看堆栈跟踪,以了解有关错误的更多信息以及错误在代码中的来源。
异常详细信息: System.Data.SqlClient.SqlException:关键字'INNER‘附近的语法不正确。
发布于 2011-03-11 21:27:58
看看这一点:
"hd_aanvragen.outlook_id" +
"FROM hd_aanvragen " +因此,您的SQL将包含:
hd_aanvragen.outlook_idFROM hd_aanvragen我不认为你是那个意思。(请注意上面引用的第一行末尾缺少空格)
建议:
假设您的数据源可以处理其code
string select = @"SELECT aanvrager.werknemersnaam AS melder,hd_aanvragen.aanvraag_titel,hd_aanvragen.aanvraag_omschrijving,hd_aanvraag_fase.fase_datum,hd_melding_niveau_1.niveau_omschrijving AS 'Niveau 1',... WHERE hd_statussen.status_id = 16";
另外,如果你要宣称:
在SQL Query Analyzer中我运行此语句,但没有得到anny错误
确保您实际上正在运行相同的SQL查询。在调试器中复制select的实际值,将其粘贴到SQL Query Analyzer中,您将看到完全相同的问题。
发布于 2011-03-11 21:27:03
这一行末尾缺少一个空格:
"hd_aanvragen.outlook_id" +发布于 2011-03-11 21:28:41
我想你在"FROM“之前漏掉了一个空格
"hd_aanvragen.outlook_id" +
"FROM hd_aanvragen "https://stackoverflow.com/questions/5273446
复制相似问题