我正在尝试运行以下函数,它连接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
答案 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设置)。