Member 14767512 Ответов: 2

Привет, как отправить арабское письмо в процедуре хранения C# SQL


HI how to send Arabic letter in store procedure c#

alter procedure [dbo].[spAllDatasddfd](@Name nvarchar(50)) as begin select * from tableTest where Name like (@Name) end exec [dbo].[spAllDatasddfd] N'arbicName'

like that it show correctly but what i want to send parameter

like that do not show anythings

alter procedure [dbo].[spAllDatasddfd](@Name nvarchar(50)) as begin select * from tableTest where Name like 'N'(@Name) end


Что я уже пробовал:

HI how to send Arabic letter in store pHI how to send Arabic letter in store procedure c# sqlrocedure c# sql
HI how to send Arabic letter in store procedure c# sql
HI how to send Arabic letter in store procedure c# sql

2 Ответов

Рейтинг:
0

OriginalGriff

Вам не нужно " N " в имени переменной - просто убедитесь, что параметр объявлен как NVARCHAR, а не VARCHAR, и он будет автоматически использовать Unicode.

Скорее всего, вам нужно проверить свое свойство сортировки, если оно не работает - это контролирует сравнение для like: SQL-сервер игнорирует мои параметры сортировки, когда я использую LIKE operator - Stack Overflow[^]


Maciej Los

5ed!
Кстати: выражение внутри оператора "Like" должно начинаться или заканчиваться на % или на то и другое (пропущено в вопросе OP).
:)

Рейтинг:
0

Maciej Los

В дополнение к оригинальному решению Гриффа...

Если вы используете оператор Like вам нужно использовать [%] или [_] также (До, После или вокруг). Смотрите документацию: LIKE (Transact-SQL) - SQL Server | Microsoft Docs[^]

alter procedure [dbo].[spAllDatasddfd](@Name nvarchar(50)) as
begin 
--add % wildcard character around
SELECT @Name = '%' + @Name + '%'
SELECT * 
FROM tableTest
WHERE [Name] like @Name
end


Member 14767512

думаю, вы ко всем........ но все равно не получается