DEMOIT - это функция, но вы используете ее, как если бы она была оператором.
Попробуйте это:
sqlCmd = new SQLiteCommand( "SELECT * FROM Foods Where Foods.Name = DEMOIT('$butter')" , sqlConn );
или
sqlCmd = new SQLiteCommand( "SELECT * FROM Foods Where DEMOIT(Foods.Name) = '$butter'" , sqlConn );
Образец из моего старого проекта http://war3share.codeplex.com/:
SQL:
select replayHash from customData where key='Rating' and String2Int(value) < 8
Код:
using System.Data.SQLite;
namespace War3Share.Client.DAL
{
[SQLiteFunction(Arguments = 1, FuncType = FunctionType.Scalar, Name = "String2Int")]
class String2Int : SQLiteFunction
{
public override object Invoke(object[] args)
{
string s = args[0] as string;
return int.Parse(s);
}
}
}