如何在 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);