国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

MS SQL Server 2000 中文模糊搜尋存儲過程及函數

2024-08-31 00:49:04
字體:
來源:轉載
供稿:網友
國內最大的酷站演示中心!

這些存儲過程/函數可以在 ms sql server 2000 里使用,包含兩組存儲過程, 這兩組函數的功能相同, 只是適用的漢字內碼范圍不同。
這些存儲過程及函數支持 gbk (大陸簡體中文及繁體中文) 和 big5 內碼 (臺灣及香港等的繁體中文)
這些函數將直接用在 sql 語句里, 使用非常方便。
可以按照含有讀音相近的文字進行查找, 可以處理多音字, 可以查找含有某個相近讀音的字的記錄, 在查找姓名時特別有用。
這些存儲過程全部用 c++ builder 編寫, 并且漢字讀音全部由 c++ 處理, 效率比較高, 比漢字讀音儲存在數據庫里用 sql 查詢快很多

【授權方式】
1.本存儲過程為免費軟件(freeware), 可以免費使用.
2.如果你(無論你代表個人還是實體)要發布軟件或者作為商業用途, 這個軟件(存儲過程/函數)必須作為你的軟件的功能的一部分,
不能單獨發布和出售本軟件(存儲過程), 也不能以這個軟件制作一個類似功能的軟件(存儲過程或函數等)來發布.
3.這個授權僅授權給你(無論你代表個人還是實體), 你不能再次授權給別人進行授權和發布.

【使用方法】
具體參數說明參考安裝方法里面的 sql 語句

得到名字的讀音編碼 (gbk)
select name,dbo.fn_cncode(name,8) from table1搜尋所有名字含有與'小寶'讀音相近的記錄, 不區分 zh ch sh 與 z c s (gbk)
select * from table1 where dbo.fn_cnlike(name,'小寶',9)<>0
得到名字的讀音編碼 (big5)
select name,dbo.fn_cncode(name,0) from table1
搜尋所有名字含有與'小寶'讀音相近的記錄, 不區分 ㄓㄔㄕ 與 ㄗㄘㄙ (big5)
select * from table1 where dbo.fn_cnlike(name,'小寶',1)<>0
【安裝方法】
1.把動態鏈接庫 victormsua.dll 復制到 ms sql server 的 binn 文件夾。
默認位置為 c:/program files/microsoft sql server/mssql/binn
2.通過執行 sql 語句注冊存儲過程,這些存儲過程必須在 master 數據庫里面注冊。
打開 master 數據庫,然后執行下面 sql 語句
exec sp_addextendedproc 'xp_getspcode' , 'victormsua.dll'
exec sp_addextendedproc 'xp_gbksndlike' , 'victormsua.dll'
exec sp_addextendedproc 'xp_getchinesecode', 'victormsua.dll'
exec sp_addextendedproc 'xp_chinesesndlike', 'victormsua.dll'
3.在用戶數據庫里面創建對應的函數
打開用戶數據庫,然后執行下面的 sql 語句
-- gbk 編碼, 支持繁體中文和簡體中文
-- str1: 漢字字符串, 返回值: 拼音編碼 (雙拼格式)
create function fn_getspcode (@str1 varchar(8000))
returns char(1024) as
begin
  declare @sp char(1024)
  exec master.dbo.xp_getspcode @str1, @sp output
  return @sp
end
go
-- gbk 編碼, 支持繁體中文和簡體中文
-- sstr 和 ssub 為漢字字符串, 從 sstr 里面按照讀音相近規則查找 ssub
-- options: 0: 一般選項, 1:不區分zh ch sh 與 z c s , 2:任意順序, 3:包括1和2 (gbk)
create function fn_gbksndlike (@sstr varchar(8000), @ssub varchar(8000), @options smallint)
returns smallint as
begin
  declare @v smallint
  exec master.dbo.xp_gbksndlike @sstr, @ssub, @options, @v output
  return @v
end
go
-- 支持 big5 和 gbk 兩種漢字編碼, 支持繁體中文和簡體中文, 通過 options 參數設定
-- str1: 漢字字符串, 返回值: 拼音編碼 (雙拼格式)
-- options: 0: big5 編碼, 8: gbk 編碼
create function fn_cncode (@str1 varchar(8000), @options smallint)
returns char(1024) as
begin
  declare @sp char(1024)
  exec master.dbo.xp_getchinesecode @str1, @options, @sp output
  return @sp
end
go
-- 支持 big5 和 gbk 兩種漢字編碼, 支持繁體中文和簡體中文, 通過 options 參數設定
-- sstr 和 ssub 為漢字字符串, 從 sstr 里面按照讀音相近規則查找 ssub
-- options: big5: 0: 一般選項, 1:不區分zh ch sh 與 z c s , 2:任意順序, 3:包括1和2 (gbk)
-- gbk : 8: 一般選項, 9:不區分zh ch sh 與 z c s , 10:任意順序, 11:包括1和2 (gbk)
create function fn_cnlike (@sstr varchar(8000), @ssub varchar(8000), @options smallint)
returns smallint as
begin
  declare @v smallint
  exec master.dbo.xp_chinesesndlike @sstr, @ssub, @options, @v output
  return @v
end
go

 

下載 ms sql server 2000 中文模糊搜尋存儲過程

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 饶阳县| 通州区| 调兵山市| 广宗县| 九寨沟县| 景宁| 定陶县| 阿坝县| 克拉玛依市| 安吉县| 新竹县| 南宁市| 依安县| 辛集市| 梨树县| 闽清县| 丰宁| 申扎县| 德阳市| 韶关市| 汾阳市| 汉阴县| 宜春市| 杨浦区| 榕江县| 阜新| 石柱| 杭锦后旗| 威海市| 芦山县| 克拉玛依市| 乌苏市| 高碑店市| 泸溪县| 鲁山县| 离岛区| 房产| 磐安县| 泗洪县| 无为县| 阜宁县|