Click here to Skip to main content
15,907,910 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I make a DataSet and DataTable in C# and then make a report for a SQL Server DB (I Use Report Viewer). I need to search Value field in DataBase when my Value is English Like "test" every thing is be OK, but when my value is Arabic\Persian\Farsi the report viewer dosen't show me anything.

My query is this:

SQL
SELECT DetailsProducts.DarSad, Materials.Material, Products.Product
FROM DetailsProducts INNER JOIN
    Materials ON DetailsProducts.MaterialID = Materials.ID INNER JOIN
    Products ON DetailsProducts.ProductID = Products.ProductID
WHERE (Products.Product = @Product)

When I need one value I can use this query:

SQL
SELECT DetailsProducts.DarSad, Materials.Material, Products.Product
FROM DetailsProducts INNER JOIN
    Materials ON DetailsProducts.MaterialID = Materials.ID INNER JOIN
    Products ON DetailsProducts.ProductID = Products.ProductID
WHERE (Products.Product =N'بطری') //(Bottle = بطری)

It is OK, but this " N'exp' " dose not work when I Use Parameters. How can I fix this?
Posted
Updated 9-Oct-11 23:26pm
Comments
CodingLover 10-Oct-11 6:35am    
In which format you have store data in the database, data type?
MohammadAli SJ 10-Oct-11 6:38am    
NVarChar
CodingLover 10-Oct-11 6:53am    
What happen if you run the above query on the query editor on SQL server? Any error message?

1 solution

I just did a test and works for me

Sp...

SQL
CREATE PROCEDURE spSelect @name nvarchar(40)
AS
BEGIN
    select *
    from employees
    where name  =@name

END


Calling....

either spSelect N'بطری' 
or EXECUTE spSelect @name = N'بطری'



You may have to set the following for you SQLcommand Object

parameter.SqlDbType = SqlDbType.NVarChar;
 
Share this answer
 
v5

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900