我使用SQLite和Xamarin for iOS。 我在创建正确的查询字符串时遇到问题。我认为问题是字符串中的特殊字符。 我给了一个品牌名称,我将在DB中选择它:
这适用于没有特殊字符的字符串,如:“BESSEY”,但对于像“ALURIX®600”这样的字符串,它不起作用。
return dbConn.Query<MasterProductDataStructure>("SELECT * FROM ZMASTERPRODUCTS WHERE ZMANUFACTURER='" + ZBRANDS + "'");
错误讯息:
SQLite.Net.SQLiteException:无法识别的令牌:“”ALUTRIX®600“
然后我测试:
return dbConn.Query<MasterProductDataStructure>("SELECT * FROM ZMASTERPRODUCTS WHERE ZMANUFACTURER=\"" + ZBRANDS + "\"");
错误讯息:
SQLite.Net.SQLiteException:无法识别的令牌:“”ALUTRIX®600“
完整的方法:
public List<MasterProductDataStructure> GetAllProductBrands(string ZBRANDS )
{
return dbConn.Query<MasterProductDataStructure>("SELECT * FROM ZMASTERPRODUCTS WHERE ZMANUFACTURER=\"" + ZBRANDS + "\"");
}
有没有人对如何解决这个问题有任何想法?
答案 0 :(得分:0)
我找到了一个可能的解决方案:
return dbConn.Query<MasterProductDataStructure>("SELECT * FROM ZMASTERPRODUCTS WHERE ZMANUFACTURER= ?", ZBRANDS);