Comment sélectionner des données d'une table à partir d'un DSN dans T-SQL?
-
04-07-2019 - |
Question
Comment obtenir des données d'une base de données accessible uniquement via une source de données ODBC (DSN) dans T-SQL MS SQL Server, quelle que soit leur version?
La solution
Après avoir lu ce qui suit, j'ai décidé de créer des packages SSIS pour obtenir les données d'une autre source de données via DSN.
Avec les serveurs liés, vous avez un peu plus de flexibilité, mais aussi certains préoccupations de sécurité supplémentaires. Vous êtes lien vers l'autre source de données en tant que utilisateur spécifique, avec cet utilisateur autorité sur le serveur lié. Si tout ce dont vous avez besoin est un accès en lecture seule à un quelques vues, cet utilisateur ne devrait être accordé cette autorité à ceux objets. Ce n'est pas si grave, tu as contrôle total de l'autorité que vous accorder à cet utilisateur, mais vous devez le gérer et se rendre compte que l'octroi trop d'autorité pourrait être une sécurité préoccupation.
Pensez à utiliser un serveur lié avec droits en lecture seule de copier des données à partir de tableaux spécifiques / vue en permanent tables dans l'autre base de données au lieu d'un paquet SSIS. Vous pouvez exécuter un travail périodiquement pour copier le données appropriées du lien serveur à la base de données locale et référencer les tables locales au sein de votre application. Ce sera probablement plus facile mettre en œuvre et maintenir qu'un SSIS paquet, et pourrait potentiellement être mis à jour plus tard pour en faire un live solution.
Autres conseils
La sélection est la partie la plus facile, mais la vraie question est de savoir comment vous connecter à la source de données.
D'abord, où sélectionnez-vous les données? Êtes-vous en train d'écrire du code ou utilisez-vous simplement l'outil Query Analyzer Tool (2000) ou Management Studio (2005)?
Vous devrez quand même configurer votre connexion à la base de données. Si vous avez besoin d’aide pour la connexion à un DSN, le site www.connectionstrings.com est très utile. Sinon, à partir d'un outil de requête, des boîtes de dialogue ou des assistants vous aideront.
Vous devez ajouter un serveur lié à la source, puis vous pouvez l'interroger comme d'habitude.