我想用C# WIN FORM实现一个查询姓名窗口,在TEXTBOX里不用输入姓名的中文,只要打一个字母就能显示出相应数据来,这该如何实现呢例:输入w 会把姓王,吴,魏。等的姓名显示出来.这个过程该如何写
解决方案 »
- C#中使用ChiInv(卡方函数)需要引用什么头文件啊?
- 求教。如何在combobox中显示数据表的一列值!急!急!
- 请教一个DataGirdView绑定的问题
- (WinForm)请问如何在Mdi窗体中加入一个侧栏啊?
- 在winform中的DATAGRID绑定数据后,如何设置列宽??
- NHibernate怎么连接ORACLE数据库
- C#和javascript(asp.net)----请教高手4
- 高分求:WebDeployment生成时错误,缺少using指令
- 怎樣將一個數組綁定到ComboBox中呢
- C#打开串口COM5
- NHibernate里的delete问题
- dataGridView 中checkbox 选中问题
returns nvarchar(4000)
as
begin
declare @word nchar(1),@PY nvarchar(4000)
set @PY=''
while len(@str)>0
begin
set @word=left(@str,1)
--如果非汉字字符,返回原字符
set @PY=@PY+(case when unicode(@word) between 19968 and 19968+20901
then (select top 1 PY from (
select 'A' as PY,N'驁' as word
union all select 'B',N'簿'
union all select 'C',N'錯'
union all select 'D',N'鵽'
union all select 'E',N'樲'
union all select 'F',N'鰒'
union all select 'G',N'腂'
union all select 'H',N'夻'
union all select 'J',N'攈'
union all select 'K',N'穒'
union all select 'L',N'鱳'
union all select 'M',N'旀'
union all select 'N',N'桛'
union all select 'O',N'漚'
union all select 'P',N'曝'
union all select 'Q',N'囕'
union all select 'R',N'鶸'
union all select 'S',N'蜶'
union all select 'T',N'籜'
union all select 'W',N'鶩'
union all select 'X',N'鑂'
union all select 'Y',N'韻'
union all select 'Z',N'咗'
) T
where word>=@word collate Chinese_PRC_CS_AS_KS_WS
order by PY ASC) else @word end)
set @str=right(@str,len(@str)-1)
end
return @PY
end--函数调用实例:
select dbo.fun_getPY('张三')
结果为:ZS 首字母的拼音
select name from users where dbo.fun_getPY(name) like 'ZS%'