ASP.NETはピンインコードによるあいまいなクエリーを実現する方法
1835 ワード
全体のプロセスは2つの部分に分けられます:ピンインコードフィールドを生成して、ピンインコードによってあいまいなクエリーを行います.
ピンインコードフィールドの一括生成の実装:
ピンインコードによるあいまいなクエリー:
これは簡単です.selectで検索して、where条件はLIKEでいいです.みんながきっと操作できると信じています.
今後,ユーザ入力のピンインコードによるデータのあいまいな照会機能を実現する際に,今日学んだASPを活用できると信じている.NETはピンインコードによるあいまいなクエリーを実現した.
ピンインコードフィールドの一括生成の実装:
protected void Button1_Click1(object sender, EventArgs e)
{
string strSQL;
strSQL = "select mc from TEST001";
IDataReader dr = dac.DataReaderQuery(strSQL);
while (dr.Read())
{
string mc=dr["mc"].ToString();
string pym = StrToPinyin.GetChineseSpell(mc);
if (pym.Length > 6)
{
pym = pym.Substring(0, 6);// 6 , !
}
string updateSql = "update TEST001 set pym ='" + pym + "' where mc='" + mc + "'";
dac.update(updateSql);
}
dr.Close();
Response.Write("alert(' !'); ");
}
StrToPinyin GetChineseSpell ( ):
public static string GetChineseSpell(string strText)
{
if (strText == null || strText.Length == 0)
return strText;
System.Text.StringBuilder myStr = new System.Text.StringBuilder();
foreach (char vChar in strText)
{
//
if ((int)vChar < 19968 || (int)vChar > 40869)
{
myStr.Append(char.ToUpper(vChar));
}
else if ((int)vChar >= 19968 && (int)vChar <= 40869)
{
// Unicode
foreach (string strList in strChineseCharList)
{
if (strList.IndexOf(vChar) > 0)
{
myStr.Append(strList[0]);
break;
}
}
}
}
return myStr.ToString();
}
ピンインコードによるあいまいなクエリー:
これは簡単です.selectで検索して、where条件はLIKEでいいです.みんながきっと操作できると信じています.
今後,ユーザ入力のピンインコードによるデータのあいまいな照会機能を実現する際に,今日学んだASPを活用できると信じている.NETはピンインコードによるあいまいなクエリーを実現した.