如何在 SQL 服务器中搜索 urdu 文本?
How to search urdu text in SQL Server?
将 urdu 文本插入 SQL 服务器没有问题,但我在搜索 urdu 文本时遇到问题 - 我不断收到:
0 rows effect
并且文本(我要搜索的)已经在 SQL 服务器数据库中。
这是我的代码:
con.Open();
string Query = "Select vendor.VendorID from vendor where vendor.Vendor_Name ='" + textBox4.Text + "'";
SqlDataAdapter SDA = new SqlDataAdapter(Query, con);
DataTable dt = new DataTable();
SDA.Fill(dt);
vend_id = (dt.Rows[0][0]).ToString();
con.Close();
在字符串文字前放置 N
使它们在 SQL 服务器中成为 unicode。您可以这样做:
string Query = "Select vendor.VendorID from vendor where vendor.Vendor_Name =N'" + textBox4.Text + "'";
但这很容易受到SQL注入攻击。请使用也将处理 unicode 的参数化查询。像这样:
string Query = "Select vendor.VendorID from vendor where vendor.Vendor_Name =@Name";
//...
SDA.SelectCommand.Parameters.AddWithValue("@Name", textBox4.Text);
将 urdu 文本插入 SQL 服务器没有问题,但我在搜索 urdu 文本时遇到问题 - 我不断收到:
0 rows effect
并且文本(我要搜索的)已经在 SQL 服务器数据库中。
这是我的代码:
con.Open();
string Query = "Select vendor.VendorID from vendor where vendor.Vendor_Name ='" + textBox4.Text + "'";
SqlDataAdapter SDA = new SqlDataAdapter(Query, con);
DataTable dt = new DataTable();
SDA.Fill(dt);
vend_id = (dt.Rows[0][0]).ToString();
con.Close();
在字符串文字前放置 N
使它们在 SQL 服务器中成为 unicode。您可以这样做:
string Query = "Select vendor.VendorID from vendor where vendor.Vendor_Name =N'" + textBox4.Text + "'";
但这很容易受到SQL注入攻击。请使用也将处理 unicode 的参数化查询。像这样:
string Query = "Select vendor.VendorID from vendor where vendor.Vendor_Name =@Name";
//...
SDA.SelectCommand.Parameters.AddWithValue("@Name", textBox4.Text);