6
votes

Unicode dans SQSH Connexion à MSSQL (ou Alternatives)

J'ai une base de données MSSQL, qui contient des données Unicode (UTF8). Mon poste de travail est Linux (actuellement Ubuntu) et cherche un outil pour travailler avec la base de données MSSQL que j'ai trouvé SQSH. Le problème est - lorsque je sélectionne des données dans la console SQSH, je reçois Jibberish au lieu de caractères Unicode. Utilisation du commutateur "-j utf8" ou "-j utf-8" n'a rien changé.

La question est - comment configurer SQSH pour fonctionner avec les données UTF-8?

Si ce n'est pas possible, connaissez-vous des outils alternatifs utilisables de Linux pour travailler avec des bases de données MSSQL remplies de données UTF-8. J'ai besoin d'exécuter toutes sortes de T-SQL, exécutez des fichiers de script SQL préparés de manière prévisible et des résultats de tuyaux pour le traitement par la suite. Une bonne interface graphique (open source) pourrait également être utilisée et non limitée aux clients Shell.


3 commentaires

Vous envisagez de dire que vous stockez des données UTF-8 dans SQL Server, je suppose vous utilisez SQL Server 2019 Aperçu?


Unicode signifie UTF16 sur Windows et SQL Server. Le texte Unicode est stocké dans les champs NvarchaRar . Cela fonctionne sans aucun problème - il s'agit d'un site Web ASP.NET qui utilise SQL Server. L'assistance UTF8 n'a été ajoutée que pour l'importation / exportation en vrac dans les dernières versions. UTF8 en tant que codage de Varchark sera ajouté dans SQL Server 2019, qui est actuellement en aperçu


Avez-vous essayé MSSQL-CLI ou Azure Data Studio ? Nom malheureux, mais c'est le développeur de plateformes croisées IDE pour SQL Server


4 Réponses :


0
votes

Utilisez-vous Freetds avec SQSH? Si vous êtes, éditez votre freeds.conf pour définir le charert.

http://www.freetds.org/userguide/localization.htm < / p>


0 commentaires

0
votes

Utilisez AZURE DATA STUDIO Pour éviter toute question de dépannage des données. C'est une excellente alternative SSMS pour Linux.


0 commentaires

0
votes

Si vous avez besoin d'outil de ligne de commande, je suggère d'utiliser officiel SQLCMD de MSSQL-Outils. Il est disponible pour toutes les distributions principales de Linux, y compris Ubuntu.

Connexion avec SQLCMD


Un autre outil shell est MSSQL-CLI

Caractéristiques

MSSQL-CLI est un nouvel outil de ligne de commande interactive qui fournit la Suivi des principales améliorations sur SQLCMD dans l'environnement terminal:

  • T-SQL Intellisense
  • Syntaxe SELECTIONNEMENT
  • jolie formatage pour les résultats de la requête, y compris le format vertical
  • MODE D'EDIT MULTI-LIGNE
  • Support de fichier de configuration

0 commentaires

0
votes

J'ai eu le même problème et il semble que cela n'a rien à voir avec le codage des charceurs, mais le problème était qu'il existe un caractère de contrôle, des caractères non transmissibles, dans le script.

Je les ai supprimés du script SQL et que tout fonctionne bien.


0 commentaires