Чтение не латинского символа из переменной XML и вставка в таблицу - PullRequest
1 голос
/ 02 февраля 2020

Я пытаюсь вставить некоторую информацию на арабском c из переменной XML в таблицу SQL Server.

Я сделал что-то подобное ниже. Однако это не работает. Подскажите, пожалуйста, чего не хватает?

Create Table EmployeeTbl
(
     firstname nvarchar(100), 
     familyName nvarchar(100) 
)

Insert into EmployeeTbl (firstName, FamilyName) 
    select 
        t.x.value('(./firstname)[1]', 'nvarchar(100)') as firstname,
        t.x.value('(./familyname)[1]', 'nvarchar(100)') as familyname           
    from  
        @XMLVariable.nodes('//employeexml) t(x) 

1 Ответ

0 голосов
/ 02 февраля 2020

Да, Вы пропустили одиночные кавычки (') в последней строке:

Create Table EmployeeTbl
(
     firstname nvarchar(100), 
     familyName nvarchar(100) 
)

Insert into EmployeeTbl (firstName, FamilyName) 
    select 
        t.x.value('(./firstname)[1]', 'nvarchar(100)') as firstname,
        t.x.value('(./familyname)[1]', 'nvarchar(100)') as familyname           
    from  
        @XMLVariable.nodes('//employeexml') t(x)

Ваш файл XML должен быть таким:

<employeexml Id="1">  
     <firstname>بشیر</firstname>  
     <familyname>المنادی</familyname>  
</employeexml>
<employeexml Id="2">  
     <firstname>یعغوب</firstname>  
     <familyname>سمیر</familyname>  
</employeexml>
...