Dossier SQL Server : Utiliser toutes les différentes possibilités de SSMS (1/2)
Bien évidement tout le monde utilise SQL Server Management Studio (SSMS) mais comme tout outil, on n'utilise que la partie que l'on connaît.
Il n'est pas question dans cet article d'expliquer comme réaliser telle opération d'administration ou bien comment il est possible d'écrire telle requête SQL, mais plutôt comment il possible d'automatiser certains usages ou d'obtenir une présentation plus lisible des informations ou bien encore comment intégrer les jeux d'instructions SQLCMD. L'objectif de cet article est donc de vous présenter quelques aspects méconnus de SSMS non pas pour savoir qu'ils existent mais bien parce qu'ils permettent de gagner du temps et facilitent l'usage de SSMS et donc le travail avec les instances SQL Server. Les quelques points mis en évidence ici ne sont pas limitatifs mais ils ont été choisis pour leur pertinence.
Lire l'articleDossier Windows : Interfaces Graphiques en Powershell (3/3)
Le mois dernier, nous avons vu comment créer sans effort des interfaces graphiques de saisie s’appuyant sur la technologie Windows Forms grâce à l’outil Primal Forms.
Nous avons vu également comment au prix d’un peu plus d’efforts faire la même chose avec WPF/XAML et Visual Studio 2008 Express. Ce qu’il est important de retenir c’est que l’effort supplémentaire consenti pour utiliser la technologie WPF sera largement compensé le jour où la nécessité de modifier l’interface se fera sentir. En effet, avec WPF les interfaces graphiques peuvent être décrites à l’aide du langage XAML et stockées dans un fichier à part ; ce qui permet une séparation nette entre la partie graphique et la partie métier (le script lui-même), ce qui est impossible avec les Windows Forms.
Dossier Windows : Interfaces Graphiques en Powershell (2/3)
Le mois dernier nous vous avons parlé des technologies Windows Forms et WPF et des cas dans lesquels préférer l’une par rapport à l’autre de ces technologies.
Nous avons seulement commencé à aborder le sujet de la création des interfaces graphiques.
Lire l'articleDossier Windows : Interfaces Graphiques en Powershell (1/3)
A l’heure où PowerShell est omniprésent, il est tout à fait légitime de se poser la question : « A quoi bon vouloir des interfaces graphiques alors que la philosophie de PowerShell est de se substituer à ces dernières ? ».
En effet, si cela peut sembler paradoxal de prime abord, en prenant un peu de recul, il est facile de trouver de nombreuses bonnes raisons qui font que les interfaces graphiques sont finalement complémentaires aux scripts.
Lire l'articleCélébrons la cryptographie courante
La division des algorythmes pour une meilleur approche de la cryptographie.
On peut diviser les algorithmes de cryptage en deux catégories : simples et complexes. Pour les premiers, nous avons RSA, l’algorithme « Rivest Shamir Adleman » sans brevet.
L’essentiel sur les CSS
Cet article donne une vue d’ensemble de CSS et explique comment il peut vous aider à créer des documents Web plus séduisants.
En termes simples, HTML est « le langage » des documents Web. Il décrit la structure et montre le contenu de votre page Web. Un cran au-dessus, les CSS (Cascading Style Sheets) disent au navigateur comment présenter vos informations dans cette structure HTML, afin que votre page ait plus de personnalité et suscite plus d’intérêt.
Contenu complémentaire : Simplifier les applications web avec Ajax, RPG et XSL |
Lire l'article
Windows PowerShell pour Exchange
Windows PowerShell a déjà 4 ans ! En Octobre 2004, Jeffrey Snover enregistrait ses premières présentations publiques sur Channel 9. En Avril 2006, c’était le tour du blog Windows PowerShell d’être inauguré.
Il semblerait que l’évangélisation et l’adoption par la communauté IT fût une réussite, puisqu’en Novembre 2007, Windows PowerShell a été intégré au Common Engineering Criteria (CEC) 2009. En d’autres termes, tout produit serveur commercialisé à partir de Juillet 2008 devra intégrer le support de Windows PowerShell.
Contenu complémentaire : Windows PowerShell et Exchange Management Shell |
Lire l'article
Scripting de schéma SQL Server 2005
Vous est-il déjà arrivé d’avoir à scripter le schéma de base de données aux fins d’archivage ? Ou votre patron vous a peut-être demandé avec insistance de mieux documenter vos bases de données afin de respecter les exigences de la loi américaine SOX (Sarbanes-Oxley), laquelle impose aux sociétés de certifier leurs comptes auprès de l’autorité de régulation des marchés boursiers américains (SEC). L’API SMO (SQL Management Options) dans SQL Server 2005 facilite la tâche consistant à scripter les tables, procédures stockées, vues, fonctions définies par l’utilisateur (UDF) et autres objets de schéma au sein de vos bases de données.
Le présent article décrit un utilitaire en mode console Windows simple, intitulé SchemaCollector. Celui-ci est écrit en C# au moyen du .NET Framework et vous permet de collecter le schéma de base de données.
Vous spécifiez une instance SQL Server chargée d’exécuter l’utilitaire par rapport à un argument de ligne de commande et le programme de collecteur de schéma génère les différents fichiers de sortie de schéma pour les tables, procédures stockées, vues, fonctions et rôles dans les sous-répertoires appropriés d’une arborescence de répertoires. Il est possible de télécharger le code source complet de l’utilitaire SchemaCollector à l’adresse http://www.itpro.fr, Club Abonnés.
Contenu complémentaire : Article : Révisez vos bases de la conception avec SQL Diagrammer Article : Fonctionnalité SQL Server 2005 facilement ignorées |
Lire l'article
10 clés pour le scripting shell de commandes
Les scripts shell sont des fichiers en texte clair qu’un shell de commandes interprète comme une suite de commandes à exécuter dans l’ordre. Ils ont une longue histoire : le shell Command.com dans MS-DOS a permis le scripting shell Cmd.exe a encore toute sa place dans la panoplie du professionnel informatique. Ainsi, un simple script shell avec une commande For peut transformer une commande qui travaille avec seulement un ordinateur ou un nom d’utilisateur à la fois sur la ligne de commande, en une commande capable de balayer le fichier texte et de s’exécuter pour chaque ligne du fichier. Comme les scripts shell sont des fichiers en texte clair qui contiennent une suite de commandes, ils sont faciles à créer, à modifier et à comprendre. Mais cette simplicité peut avoir son revers.
En effet, un script shell écrit à la va-vite peut faire des ravages. J’en ai vu faire des suppositions incorrectes à propos de l’OS ou de l’environnement sous-jacent qui, au mieux, les empêchent de fonctionner correctement, ou au pire, sèment le chaos dans un système parfaitement confiant. C’est pour vous éviter de tels pièges que j’ai écrit les 10 conseils clés suivants, pour créer des scripts plus robustes donnant satisfaction dans divers environnements.
Guide pour traiter les erreurs de SQL imbriqué
Dès lors que SQL se généralise dans les applications de production, il importe de bien vérifier et traiter les erreurs des instructions SQL imbriquées. Quand vous codez des instructions SQL imbriquées dans un langage évolué, tel que ILE RPG ou ILE Cobol, vous devez toujours vérifier la bonne fin de chaque instruction SQL exécutable, puis traiter comme il se doit les éventuelles conditions inattendues. Cet article fournit quelques conseils, techniques et profils de coding qui facilitent considérablement cette tâche.
En matière de programmation SQL imbriquée, il faut observer une règle simple : vérifier la valeur SQL state aussitôt après chaque instruction SQL exécutable du programme. Quand le SQL runtime revient à votre programme après avoir tenté d’exécuter une instruction SQL, le runtime définit une variable de programme nommée SQLState pour la valeur SQL state. (Les instructions déclaratives imbriquées, telles que Declare Cursor, et les directives de précompilateur, telles que Set Option, ne sont pas exécutées par le SQL runtime, et donc elles ne contribuent jamais à définir SQL state.)
SQL state est un code de cinq caractères présentant la structure suivante : XXYYY, où
• XX désigne la classe
• YYY désigne la sous-classe
Les significations des valeurs classe sont les suivantes :
• 00 – instruction correctement exécutée sans condition
• 01 – instruction correctement exécutée avec avertissement
• 02 – l’instruction n’a traité aucune donnée
• 03 à ZZ – l’instruction a échoué à cause d’une erreur
A propos de ces classes, on peut noter plusieurs choses. La classe « 00 » ne contient que la valeur SQL state « 00000 », donc on peut tester la chaîne entière plutôt que la seule classe.
Pour plusieurs des valeurs SQL state dans la classe « 01 », divers avertissements et erreurs column-level peuvent être indiqués par une valeur positive dans la variable d’indicateur null associée à une variable hôte. Les erreurs column-level potentielles incluent la troncature de chaîne et de date heure, les erreurs arithmétiques, les erreurs de conversion de caractères et les erreurs de mapping de données. Le sujet « References to host variable » du manuel SQL Reference fournit une description complète des paramètres de variables indicateurs. S’agissant de conditions spécifiques aux colonnes, il faut coder les tests pour qu’ils conviennent à l’application en plus de la vérification d’erreurs au niveau instruction montrée dans cet article.
La classe « 02 » inclut le SQL state « 02000 », lequel indique généralement que (1) aucune ligne n’a été renvoyée sur une opération d’entrée, (2) aucune ligne n’a été ajoutée par une opération Insert qui utilise un subselect pour spécifier de nouvelles lignes, ou (3) aucune ligne n’a satisfait à la condition de recherche d’une instruction Update ou Delete. Que l’une de ces conditions soit une erreur ou une condition escomptée, dépend de l’application ; c’est un aspect que votre code de vérification d’erreurs devrait prendre en considération.
La figure 1 fournit une liste complète des valeurs de classe. Le dernier manuel V5 SQL Messages and Codes fournit une liste complète des valeurs SQL state. Ces valeurs se veulent homogènes dans toute la famille IBM DB2 et sont fondées sur le standard SQL 1999. Pour plus d’informations à ce sujet, voir l’encadré « Où trouver des valeurs SqlState et SqlCode ».
Contenu complémentaire : --> Lire l'article Suivre à la trace le fonctionnement interne des applications réseauLa commande TRCINT (Trace Internal) de i5/OS collecte de nombreux types de traces de composantes LIC (Licensed Internal Code). La série Dépanner TCP/IP se poursuit par l’examen du petit sous-ensemble de points de trace de composantes de sockets qui vous montrent les API sockets. Toute application réseau active sur votre système utilise des API sockets et, si vous comprenez ces points de trace, vous pourrez facilement cibler les problèmes de communications et les résoudre prestement.
Lire l'article Quelques considérations pour réussir l’implémentation d’ILELe modèle de programmation System i traditionnel est simple : entrer le code dans un membre source, le compiler, et appeler le programme généré. Il existe une relation de un à un entre le membre et l’objet programme. Par comparaison, ILE croule sous les sous-procédures, les programmes de service, les modules, les répertoires de liage et un langage binder – sans parler des groupes d’activation, lier par copier et lier par référence.On comprend mieux pourquoi la plupart des programmeurs abordent ILE avec réticence lorsqu’ils s’embarquent dans un processus de modernisation ou un nouveau développement. Reconnaissance de modèle pour faciliter la programmation RPG moderneVous avez suivi un cours ILE RPG ou lu un livre ou un article. Vous savez donc ce que sont les procédures, les programmes de service, les répertoires de liage et les groupes d’activation. Et vous entamez bille en tête l’écriture de votre première application ILE… pour constater que rien ne colle !« C’est vraiment trop compliqué ! » vous exclamez-vous. « Comment accédez aux fichiers ? Comment traiter les erreurs quand les routines se trouvent dans des endroits différents ? Où diviser mes programmes en procédures ? » 5 étapes pour développer et déployer du code CLR dans SQL ServerItzik Ben-Gan vous présente comment développer et déployer du code CLR dans SQL Server Lire l'articleCLR or not CLR telle est la question ?L’intégration du CLR (Common Language Runtime) .NET dans SQL Server. Afin de faciliter le travail, je fournis le code .NET en C# et en VB.NET, et tous les exemples sont téléchargeables dans le Club Abonnés d'iTPro.fr. Lire l'articleDévelopper du code performant et de qualité avec Visual Studio 2008Que se passe-t-il dans mon script ?Dans le domaine de lles scripts les plus simples. Lire l'articleVeillez à bien protéger vos scriptsVous venez juste d’écrire un superbe leur protection. Bien que vous puissiez protéger les scripts par des méthodes classiques, il existe un meilleur moyen. Lire l'articleAstuces concernant l’IDE Visual Studio 2005J’ai collaboré récemment à quelques projets de développement qui m’ont permis de mettre à l’épreuve Visual Studio 2005. Ce faisant, j’ai identifié les astuces de productivité suivantes et j’aimerais vous en faire profiter Lire l'articleDémystification du débogage dans SQL Server 2005Pour déboguer une procédure stockée T-SQL dans SQL Server 2000, vous faites appel à l’Analyseur de requêtes (Query Analyzer). Il suffit de cliquer avec le bouton droit de la souris sur la procédure stockée et de sélectionner Débogage (Debug). Dans SQL Server 2005, l’Analyseur de requêtes est remplacé par SQL Server Management Studio et il serait logique de penser que la démarche sera similaire, à savoir cliquer avec le bouton droit de la souris sur la procédure stockée T-SQL et sélectionner la fonction de débogage de Management Studio. Ce n’est malheureusement pas aussi simple car vous ne trouverez aucune option de débogage.Dans SQL Server 2005, le débogage d’une procédure stockée T-SQL passe par l’utilisation de l’environnement de développement Visual Studio 2005. Mais, avant d’en arriver là, il faut avoir de la matière à déboguer. Au lieu de reprendre une procédure stockée existante ou d’en créer une dans Management Studio, nous allons en construire une via le type de projet mal connu Database de Visual Studio 2005. Dans les projets Database, vous pouvez accéder au Query and View Designer, lequel fournit des outils graphiques pouvant servir à créer des procédures stockées T-SQL. Lire l'articleX
|