【发布时间】:2016-08-15 12:08:26
【问题描述】:
我尝试在 xamarin 中执行此查询
SELECT * FROM GPSPoint WHERE SQRT( POW({0}-lat,2) + POW({1}-lng,2) ) < 5*5
但它给了我错误信息
SQLite.SQLiteException: no such function: SQRT
经过搜索发现Android开发者可以使用sqlite3_create_function方法在SQLite中创建新函数。
我怎样才能在 xamarin 中做同样的事情?
【问题讨论】:
-
AFAIK 就像存储过程一样,不能在 SQLite 中创建函数。如果您发现我错了,请 LMK 对我有益。
-
我什至不确定那是一个有效的查询。 SQL 查询将是
WHERE col = value -
@Takarii 在 c# 语法中是一个有效的查询。原文为
var query = conn.Query<GPSPoint>(string.Format("SELECT * FROM GPSPoint WHERE SQRT( POW({0}-lat,2) + POW({1}-lng,2) ) < 5*5", lat, lng)); -
@jj- 但安卓开发者可以创建新功能。请参考this SO answer。
标签: c# xamarin sqlite.net