2008-10-05 57 views
35

用戶定義的函數&整理序列 完全支持用戶定義的函數和整理序列意味着在很多情況下,如果SQLite沒有功能,您可以自己用最喜歡的.NET語言編寫它。寫UDF的和整理順序從未如此簡單在System.Data.SQLite中創建/使用用戶定義的函數?

我發現在C#SQLite ADO.NET提供商L此位在這裏找到,並有瞭解關於如何實現/使用用戶定義函數的文檔問題。

任何人都可以解釋如何或爲這個失去的新手提供任何工作示例?

回答

50

羅伯特·辛普森,你可以在你的sqlite的查詢使用正則表達式功能的一個很好的例子:

// taken from http://sqlite.phxsoftware.com/forums/p/348/1457.aspx#1457 
[SQLiteFunction(Name = "REGEXP", Arguments = 2, FuncType = FunctionType.Scalar)] 
class MyRegEx : SQLiteFunction 
{ 
    public override object Invoke(object[] args) 
    { 
     return System.Text.RegularExpressions.Regex.IsMatch(Convert.ToString(args[1]),Convert.ToString(args[0])); 
    } 
} 

// example SQL: SELECT * FROM Foo WHERE Foo.Name REGEXP '$bar' 
+5

作爲參考,[見這個答案](http://stackoverflow.com/a/26155359/1352471 )如何將它綁定到SQLiteConnection。 – metadings 2014-10-02 06:19:41

相關問題