调试会在关键字'其中'附近产生错误的语法。

时间:2015-09-29 02:54:09

标签: c# mysql

我正在尝试运行以下函数,它连接productcategory表和CategorizedProduct表并返回结果。抛出异常时,调试器显示查询字符串,我已经尝试在我的测试mysql数据库中运行查询字符串,它可以工作。

select是一个模型。我检查过并确保public static List<CategorizedProduct> GetAllCategorizedProducts(string category) { using (var conn = Sql.GetConnection()) { string queryString = "select ProductID,ProductName,ProductType,ProductCategory,CategoryName,Unit,PricePerUnit,IsAvailable,NumberOfUnits,RemainingUnits,WeightPerUnit" + " from product inner join productcategory where product.ProductCategory = productcategory.CategoryID and CategoryName = \'" + category + "\' order by ProductType;"; return conn.Query<CategorizedProduct>(queryString).ToList(); } } 列表中的所有字段都与模型中的字段匹配。

我无法找到错误的位置。

ReferenceError: $ is not defined

1 个答案:

答案 0 :(得分:1)

请尝试使用此版本:

select ProductID, ProductName, ProductType, ProductCategory,
       CategoryName, Unit, PricePerUnit, IsAvailable, NumberOfUnits,
       RemainingUnits, WeightPerUnit
from product inner join
     productcategory 
     on product.ProductCategory = productcategory.CategoryID 
where CategoryName = \'" + category + "\'
order by ProductType;

我认为在on之后join在MySQL中是可选的,但这可能会解决您的问题。任何其他数据库都需要on(我想如果您在MySQL中有某些ANSI设置)。