C# 註冊並使用sqlite 自定義函式
1,sqlite 沒有 ToUpper 的自帶函式。 沒關係,我們可以建立它;
2,sqlite 不能直接建立自定義函式,不能像 sql server中那樣方便建立並使用。沒關係,我們照樣可以建立它,建立成功後,我們照樣可以隨心所欲(比如 批量更新等)。
效果:
var ss = JonseTest.SqlLiteHelper.GetSingle(out sError, "select ToUpper('ABCcdsf')"); // ABCCDSF
var ss2 = JonseTest.SqlLiteHelper.GetSingle(out sError, "select GetChinesePYChar('我a*%愛你中國')"); // Wa*%ANZG
方案:
step1: 建立類 ToUpper 和 GetChinesePYChar
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SQLite;
namespace MetroGuide
{
[SQLiteFunction(Name = "ToUpper", Arguments = 1, FuncType = FunctionType.Scalar)]
public class ToUpper : SQLiteFunction
{
public override object Invoke(object[] args)
{
return args[0].ToString().ToUpper();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SQLite;
namespace MetroGuide
{
[SQLiteFunction(Name = "GetChinesePYChar", Arguments = 1, FuncType = FunctionType.Scalar)]
public class GetChinesePYChar : SQLiteFunction
{
public override object Invoke(object[] args)
{
string sOrigion = args[0].ToString();
return Common.GetPYString(sOrigion);
}
}
}
step2:
var ss = JonseTest.SqlLiteHelper.GetSingle(out sError, "select ToUpper('ABCcdsf')"); // ABCCDSF
var ss2 = JonseTest.SqlLiteHelper.GetSingle(out sError, "select GetChinesePYChar('我a*%愛你中國')"); // Wa*%ANZG
step3:
public static string ResetAllPointNameChinesePYChar()
{
return "update tblLinePoint set ChinesePYChar=GetChinesePYChar(Name)";
}
結束。
參考 :
http://blog.csdn.net/huanshanv20008/article/details/7635092
相關文章
- 轉載:在c#中使用sqlite的3種自定義函式C#SQLite函式
- SQLContext、HiveContext自定義函式註冊SQLContextHive函式
- 在python中使用sqlite的自定義函式功能PythonSQLite函式
- keycloak~使用自定義的註冊頁
- Laravel 自定義登入註冊頁面並使用 Ajax 進行資料傳輸Laravel
- MySQL使用之五_自定義函式和自定義過程MySql函式
- BIEE 儲存本地自定義檔案並通過fmap函式使用函式
- shell自定義函式函式
- Oracle 自定義函式Oracle函式
- perl自定義函式函式
- 函式索引使用細節——自定義函式的索引化函式索引
- Clickhouse 使用者自定義外部函式函式
- matlab自定義函式建立與使用Matlab函式
- 7.yii中使用自定義函式函式
- 自定義函式索引使用及其注意點函式索引
- Hive常用函式及自定義函式Hive函式
- Loadrunner 使用者自定義函式使用[轉]函式
- hive 3.0.0自定義函式Hive函式
- Hive中自定義函式Hive函式
- MySQL建立自定義函式MySql函式
- python 自定義函式Python函式
- oracle 自定義聚合函式Oracle函式
- mysql自定義函式篇MySql函式
- Oracle中自定義函式Oracle函式
- 一個自定義函式函式
- Oracle自定義聚集函式Oracle函式
- ORACLE 自定義函式BUG?Oracle函式
- SQL SERVER 自定義函式SQLServer函式
- SQL 自定義函式FUNCTIONSQL函式Function
- C#使用自定義特性C#
- xib自定義cell不用註冊的方法
- JavaScript 註冊事件處理函式JavaScript事件函式
- 教你認識AWK 使用者自定義函式函式
- MySQL使用自定義變數模擬分析函式MySql變數函式
- PHP 自定義函式用法及常用函式集合PHP函式
- java自定義equals函式和hashCode函式Java函式
- mysql 自定義分析函式 least 及 日期函式MySql函式AST
- laravel 自定義全域性函式Laravel函式