0

Actuellement, je veux juste télécharger des fichiers du magasin de données de lac et de stocker des données dans ma base de données sql mais j'ai des problèmes avec des caractères tels que (ę, ± , ć, ³) mais il est remplacé par (e, a, c, l). Actuellement, j'ai essayé de changer l'information de culture et l'encodage dans le lecteur de flux, mais cela ne me donne pas de meilleur résultat (toujours obtenir des caractères remplacés dans mes valeurs de chaîne). Alors, y a-t-il du travail ou n'importe quel endroit où je peux globalement définir les paramètres d'encodage pour mon service d'application et les travaux web inclus dans le service d'application web?Azure Web Job mauvais encodage des données téléchargées du magasin de lac de données

+0

Veuillez commencer par [this] (https://github.com/projectkudu/kudu/wiki/Isolating-WebJobs-and-Deployment-script-issues) pour supprimer WebJobs de l'équation. En outre, essayez d'enlever les données lac et SQL de l'image car elles sont probablement hors de propos. Fondamentalement, isoler quelque chose de beaucoup plus simple et reformuler votre question avec un code spécifique. –

Répondre

0

Le problème n'est pas lié à WebJob. Nous pourrions lire n'importe quel caractère spécial de n'importe quel endroit et l'écrire à un autre endroit dû au travail de lecture et d'écriture au niveau d'octet.

Les chaînes contenant des caractères tels que (ê, ±, ć, ³) doivent être remplacées par (e, a, c, l). Quel type de colonne avez-vous défini pour les caractères spéciaux dans votre serveur SQL Server?

Si le type de colonne est char ou varchar. Il perdra des données si vous stockez des caractères spéciaux. Changer le type de colonne en nchar ou nvarchar résoudra ce problème.

Voici le test de mon côté.

Étape 1, Définissez une table à l'aide de l'instruction SQL suivante.

CREATE TABLE [dbo].[mytable] 
(
    [id] INT NOT NULL PRIMARY KEY, 
    [text1] varchar(50), 
    [text2] nvarchar(50) 
) 

Étape 2, insérez une ligne à l'aide de l'instruction SQL suivante.

insert into mytable (id, text1, text2) values(1, 'ę, ą, ć, ł', 'ę, ą, ć, ł') 

Étape 3, interrogez les données de mytable à l'aide de l'instruction SQL suivante.

select * from dbo.mytable 

Voici le résultat obtenu.

enter image description here

Selon le résultat, la valeur de text1 a été changé en 'e, a, c, l' en raison du type de colonne est varchar.

+0

Des mises à jour? Votre problème est-il résolu? Si oui, veuillez cocher les réponses utiles comme réponse. Si vous avez d'autres questions, n'hésitez pas à me le faire savoir. – Amor