Intégrité référentielle avec SQL Server
par Kalen Delaney
La maintenance des relations logiques entre les tables est un élément essentiel de la gestion de base de données. Voici comment utiliser les nouvelles méthodes d'application de l'intégrité référentielle dans SQL Server 2000.Le maintien de relations solides est primordial.
La création et le maintien de relations logiques entre les tables constituent une partie fondamentale du travail avec des bases de données relationnelles. La plupart des bases de données doivent entretenir certaines relations, sous peine de corruption logique des données. Lorsque de telles relations existent, on dit que ces données disposent d'une intégrité référentielle. L'une des tables est la table référencée et l'autre, la table de référence ; les valeurs de la table de référence doivent correspondre aux valeurs de la table référencée. (Certaines utilisateurs qualifient cette relation de tables parent/enfant. Toutefois, cette terminologie implique une hiérarchie évitée par le modèle relationnel). SQL Server peut mettre en oeuvre automatiquement l'intégrité référentielle à travers des contraintes de clés étrangères que vous aurez préalablement définies. Cette fonction est appelée intégrité référentielle déclarative (en anglais "Declarative Referential Integrity" ou DRI) en raison de sa présence dans la définition de la table. On peut également utiliser d'autres fonctions, comme les déclencheurs, pour imposer des relations ; on parle alors d'intégrité référentielle de procédure. Dans cet article, je présente comment gérer l'intégrité référentielle dans SQL Server, en accordant une attention particulière aux nouvelles fonctions intéressantes de SQL Server 2000.
SQL Server 7.0 et les versions précédentes disposaient d'une seule méthode pour traiter les tentatives de violation des contraintes de clés étrangères. Si un utilisateur tente de modifier les données d'une table d'une manière qui pourrait violer l'intégrité référentielle (telle qu'elle est définie dans les clés étrangères), SQL Server empêche cette modification et renvoie un message d'erreur. SQL Server 2000 dispose d'une nouvelle fonction cascade pouvant traiter les violations de l'intégrité référentielle d'une autre manière, comme je vais vous le démontrer.
Pour commencer, analysons rapidement un exemple permettant de clarifier ce que représente l'intégrité référentielle. La base de données Northwind dispose d'une table appelée Orders, et d'une autre, appelée Order Details. Dans la table Orders, la colonne OrderId représente la clé primaire identifiant chaque commande de manière unique. La table Order Details possède également une colonne OrderId mais, dans cette table, la colonne est une clé étrangère qui doit correspondre à un OrderId existant de la table Orders. Dans cet exemple, la table Orders est la table référencée et la table Order Details est la table de référence. Si on définit une contrainte de clé étrangère pour mettre en oeuvre la relation entre les tables Orders et les Order Details, SQL Server vérifie que la modification de l'une de ces tables ne viole pas la relation. Si par exemple on essaye de supprimer un enregistrement de la table Orders alors que l'OrderId de cet enregistrement existe dans la table Order Details, la suppression violera la contrainte d'intégrité référentielle. Tenter de mettre à jour une colonne OrderId de la table Orders lorsque la valeur d'origine, et non la nouvelle valeur, existe dans les Order Details, constitue également une violation. En outre, SQL Server doit vérifier chaque insertion dans Order Details pour s'assurer que le nouvel OrderId existe dans la table Orders, et doit vérifier toutes les mises à jour de la colonne OrderId dans Order Details.
Terminal Server évolue
Microsoft ayant modifié la structure des licences de Terminal Server pour rendre son coût plus raisonnable, c'est à présent un moyen facile et très rentable d'assurer des services de terminaux aux clients Win32. Mais comme d'autres premières versions, Terminal Server présente quelques lacunes susceptibles d'en limiter l'utilisation.Le Service Pack 4 de Terminal Server (différent du SP4 de la version classique de NT) apporte des changements bienvenus à Terminal Server. Cet article décrit les changements que le SP4 de Terminal Server et Windows 2000 Server apporteront à Terminal Server.
Lire l'articleQue devient ZAW ?
Microsoft a commencé à parler sérieusement d'une baisse du coût global de possession
(TCO) il y a plus d'un an, en annonçant ses projets Zero Administration for Windows,
un ensemble de technologies pour aider les administrateurs à exercer un contrôle
centralisé des nombreux PC de leur entreprise.
Les technologies associées à ZAW (Zero Administration for Windows) se composent
d'un certain nombre d'outils déjà existants (comme les stratégies système de Windows
NT 4.0, Windows 95, et Win98), et de certains outils, comme Systems Management
Server (SMS). Par ailleurs, Configuration and Control Management (CCM) est un
ensemble important de fonctions ZAW qui fera son apparition dans Windows 2000.
Microsoft utilise cette appellation pour décrire un certain nombre d'éléments
de l'initiative globale ZAW.CCM se composait à l'origine de plusieurs technologies
et d'un ensemble de directives pour les ISV. CCM est né de l'espoir de Microsoft
de pouvoir résoudre certains problèmes d'administration communément rencontrés
par ses clients. Une année de discussion avec ces partenaires a permis à Microsoft
d'améliorer ces idées et d'aboutir à une vision de CCM moins grandiose que le
concept original de ZAW, mais plus réaliste. (Pour en savoir plus sur les concepts
de départ de ZAW, voir l'article " ZAW : Windows NT sans administration " de février
1998).
CCM, le ZAW révisé, porte sur la résolution de trois problèmes : l'installation
d'un nouvel OS sur un nouvel ordinateur ou sur le nouveau disque dur d'un ordinateur
existant, le déploiement d'applications à partir de serveurs centraux sur les
ordinateurs de bureau, et la distribution de modifications ou de mises à jour
des applications au moyen d'IntelliMirror.
Active Directory arrive : adaptez vos services DNS
Windows 2000 est désormais prêt. Vos systèmes le sont-ils ? Pour déployer Windows 2000 vous devez auparavant régler deux problèmes liés à Active Directory : vos noms de domaines et vos serveurs DNS
Lire l'articleTirer le meilleur de la console de reprise
Dans Windows 2000 Microsoft introduit un nombre important de fonctions et de possibilités attendues depuis longtemps. Mais quels que soient les nouveaux avantages pour les administrateurs et les utilisateurs, l'arrivée d'une nouvelle version de système d'exploitation présente inévitablement un inconvénient majeur : celui de rendre obsolète une bonne partie des compétences, des techniques et des outils développés par les administrateurs réseau pour la maintenance quotidienne du système d'exploitation.
Considérons, par exemple, la récupération du système après incident. On n'oserait imaginer le déploiement massif d'un nouveau système d'exploitation sur un réseau, tant que l'on ne maîtrise pas les mesures de base nécessaires pour réparer le système quand les choses tournent mal. Les raisons de cette approche sont simples. D'abord, aucun système d'exploitation n'est à l'abri d'une panne ou d'une altération (pas encore en tous cas). Deuxièmement, le déploiement à grande échelle d'un système d'exploitation se traduit nécessairement par une dépendance proportionnelle vis-à-vis de la disponibilité de ce système - en particulier dans le cas des serveurs.
Si une organisation dépend de Windows 2000, il faut pouvoir réparer les systèmes Windows 2000 lorsqu'ils tombent en panne. Bien que Microsoft ait nettement amélioré la fiabilité et les possibilités de récupération des systèmes sous Windows 2000, des incidents peuvent malgré tout encore bel et bien se produire. Dans ce cas, il ne faut pas se trouver pris au dépourvu. C'est à cela que servent certains des nouveaux outils proposés par Microsoft dans Windows 2000.
Windows 2000 et SQL Server
par Michael Otey
Cinquième version majeure du système d'exploitation Windows NT, Windows 2000 (W2K)
comprend de nombreuses fonctions avancées lui permettant de concurrencer de très
près les systèmes UNIX, dont la réputation n'est plus à faire en termes de service
de fichiers, d'applications et de bases de données sur le marché des entreprises.
Les améliorations apportées à W2K en matière de réseau et de facilité d'emploi,
en font une meilleure plate-forme pour SQL Server que NT 4.0.
Partager les connexions Internet
Le routage IP du LAN vers le WAN est un thème récurrent depuis plusieurs années.
Cet article fait le point sur les aptitudes de Windows NT à router le trafic IP.
En1992, j'ai décidé d'établir mon entreprise sur le Web. Je me suis donc adressé
à un ISP pour me procurer 256 adresses IP. L'entreprise devait héberger ses propres
serveurs Web et de messagerie et il fallait par conséquent des connexions Internet
24 x 7. Au lieu d'acheter un routeur LAN-WAN de Cisco Systems ou autres constructeurs,
je trouvai l'expérience beaucoup plus enrichissante de construire moi-même un
routeur.
Ce premier routeur devait servir à traiter OS/2 2.0 et TCP/IP pour OS/2. Dès que
Windows NT se mit à supporter le routage IP, je remplaçai OS/2 par NT. Puis je
rédigeai une série d'articles pour Windows 2000 Magazine pour expliquer comment
faire d'un système NT un routeur LAN-WAN.
es articles continuent à générer une importante quantité de courrier, décrivant
tous le même scénario et posant constamment la même question : J'ai
un ordinateur chez moi connecté à Internet par une liaison ADSL/modem câble/RNIS.
J'ai aussi plusieurs autres machines chez moi.
Comment configurer mon PC connecté à Internet pour partager sa liaison Internet
avec les autres machines ?
Après la publication des premiers articles, j'ai revu la question deux fois
- d'abord lorsque Microsoft a sorti le code de routage amélioré RRAS (dit Steelhead),
puis pour la sortie de Proxy Server 2.0. RRAS n'était pas la bonne réponse pour
les télétravailleurs, car il exigeait que chaque machine ait une adresse IP fournie
par l'ISP. Or, la création d'adresses aléatoires ne fonctionnait pas pour des
machines domestiques. Proxy Server contournait le problème mais en posait un autre
en raison des frais occasionnés - dans les 1000 dollars.
Avec Windows 98 SE ou Windows 2000 Professional, il suffit de quelques
clics de souris et de rebooter pour profiter facilement du routage
Mais avec Windows 98 Second Edition (Win98SE) ou Windows 2000 Professional,
il suffit de quelques clics de souris et de rebooter les PC pour profiter facilement
du routage. Win98SE devait être disponible au moment où vous lirez cet article
et Windows 2000 Pro et Windows 2000 Server sortiront probablement très bientôt.
Malheureusement Microsoft n'offrira pas Win98SE à tout le monde - comme les versions
OSR (Version de service OEM) de Win95, il ne sera disponible qu'avec l'achat d'un
nouvel ordinateur. Mais si vous pouvez attendre jusqu'à la sortie de Windows 2000
ou si vous achetez un nouveau PC, le routage facile c'est pour bientôt.
RDP ou ICA : quel protocole faut-il choisir ?
Windows NT Terminal Server est sorti depuis longtemps et a pu être testé par de nombreuses entreprises dans leur environnement, il est donc désormais possible d'avoir le recul pour faire un choix entre RDP et ICA. Cet article explique comment les deux protocoles se font concurrence et se complètent. Clients légers, Poste de travail, Protocoles, réseaux, Terminaux, Web. Après neuf mois d'utilisation dans divers environnements, je suis arrivé à la conclusion que RDP et ICA ont l'un et l'autre un niveau de performances suffisant dans la plupart des cas. Nous évoquerons les différences de performances, mais j'insisterai sur ce que je considère comme le plus important - les fonctions et le coût. (Pour vous informer sur un troisième protocole d'affichage possible pour les utilisateurs NT se connectant à Terminal Server, voir l'encadré " Le protocole X-11 ").
Lire l'articleL’Observateur d’événements de Windows NT
Si vous avez déjà pratiqué Windows NT, vous connaissez certainement le message Un service ou un périphérique au moins n'a pas réussi à démarrer, qui apparaît, par exemple, après l'ajout d'une nouvelle carte réseau ou d'un adaptateur SCSI. Si n'avez pas d'explication pour ce message d'erreur, vous avez la possibilité d'en déterminer la cause avec l'Observateur d'événements de Windows NT.
Lire l'articleLes fondamentaux de DNS
On peut dire que DNS est une fonction optionnelle dans Windows NT 4.0. Ni NT,
ni les domaines, ne s'en servent réellement. En fait, la plupart des entreprises
ayant un serveur DNS ne font pas tourner ces serveurs sous Windows NT, mais sous
Unix, foyer traditionnel de DNS. Les choses sont sensiblement différentes avec
Windows 2000.Théoriquement, il est possible d'obtenir une certification MCSE NT 4.0 complète
sans même connaître DNS. Avec Windows 2000, le scénario est différent. Lorsqu'un
poste de travail Windows 2000 recherche un partage particulier sur un serveur,
il recherche le nom du serveur dans DNS pour connaître l'adresse réseau du serveur
et trouver un contrôleur de domaine auquel se connecter. (Les machines Windows
2000 utilisent également DNS pour trouver des serveurs de catalogues globaux,
un autre ingrédient important de la connexion.) En outre, les postes de travail
interrogent DNS lorsqu'ils doivent choisir entre plusieurs contrôleurs de domaines
pour déterminer le plus proche.
DNS est au centre de la gestion des domaines dans Windows 2000. Pour bien s'en
l'exploiter, il faut en comprendre certaines notions fondamentales telles que
les noms et adresses DNS, l'enregistrement de noms, la hiérarchie DNS, les serveurs
DNS primaires et secondaires, ou l'intégration de DNS et Active Directory (AD).
Le grand Monopoly de la bande passante
Le réseau à large bande passante est l'accès à Internet à haut débit du 21ème
siècle, équivalent au système des autoroutes dans les années 60. Ils sont déjà
aux Etats-Unis l'enjeu d'une bataille de titans.
Les services réseau à large bande passante permettent l'accès à haut débit par
les câbles de télévision au moyen de modems câble, par satellite au moyen d'une
antenne parabolique et par les connexions téléphoniques numériques sur fil de
cuivre (ligne d'abonné numérique asymétrique - ADSL - et ligne d'abonné numérique
symétrique - DSL) et de modems.
Les câbles de télévision et les DSL permettent la transmission bidirectionnelle
rapide alors qu'une antenne parabolique par satellite n'offre la transmission
à haut débit que pour réceptionner un téléchargement. Elle nécessite une connexion
par modem pour émettre. Ces deux types de transmission offrant également l'accès
rapide au contenu, le marché s'y intéresse de près.
Contrôlez vos services d’annuaire avec un proxy LDAP
Ces dernières années les services d'annuaire ont vu leur cote monter dans les
entreprises. Le succès grandissant de Novell avec Novell Directory Services (NDS)
et le lancement par Microsoft d'Active Directory (AD) ont été des raisons suffisantes
pour décider un grand nombre d'entreprises à explorer le potentiel des services
d'annuaire dans leurs environnements.
L'interface proxy LDAP (Lightweight Directory Access Protocol) séduit les entreprises
en leur offrant un large éventail d'informations d'identité grâce à une réplique
virtuelle, sans la consommation de CPU impliquée par une duplication des données
et la propagation des changements à travers un réseau.
En 1995 LDAPv2 a inauguré un protocole d'accès d'annuaire standard et, en 1997,
LDAPv3 a étendu le protocole en lui ajoutant plusieurs fonctions.
Pour tout savoir sur LDAP, voir les RFC (Request for Comments) 1 777, pour LDAPv2,
et 2 251, pour LDAPv3, de l'IETF à l'adresse
http://www.ietf.org/rfc.html
Les éditeurs ont immédiatement commencé à développer des produits LDAP.
Par exemple, Microsoft a permis la consultation d'Exchange Server au moyen de
LDAP. Dans d'autres produits compatibles LDAP, les éditeurs s'appuient sur un
annuaire LDAP disponible pour stocker des données sur les utilisateurs, leurs
profils et des informations de configuration.
Par exemple, les produits SiteMinder de Netegrity et FireWall-1 de Check Point
Software Technologies utilisent soit des services d'annuaires propriétaires, soit
un service d'annuaire d'éditeur tiers, comme Netscape Directory Server, pour stocker
des informations sur les utilisateurs et les stratégies.
Pour un produit maintenant une base de données d'utilisateurs ou un annuaire interne,
il ne faut que quelques efforts de développement pour permettre la consultation
de la base de données ou de l'annuaire via LDAP. En revanche l'utilisation d'annuaires
LDAP est plus difficile car les produits LDAP comptent sur une entreprise pour
avoir un annuaire supportant les besoins spécifiques des applications.
La fonctionnalité LDAP rend aussi plus difficile le support entre produits.
Lorsque AD aura acquis une position de force et offrira un niveau de service garanti
et des informations sur lesquelles les autres applications pourront s'appuyer,
on assistera probablement à une forte reprise de l'activité LDAP.
Actuellement, trois éditeurs proposent des serveurs proxy LDAP autonomes : Innosoft
International, avec ILPS (Innosoft LDAP Proxy Server), MaXware Benelux avec MLPS
(MaXware LDAP Proxy Server) et NEXOR avec DBA (Directory Boundary Agent).
La médiation LDAP peut aider à garder le contrôle lorsqu'il s'agit d'accorder
l'accès à plusieurs ressources compatibles LDAP, en l'absence de solution de métaannuaire
intégrale ou d'une maîtrise totale des ressources compatibles LDAP, dont il faut
autoriser l'accès.
Nous allons examiner les services proxy LDAP liés aux services d'annuaire, un
certain nombre de serveurs proxy LDAP disponibles, ainsi que les limites et les
avantages de l'utilisation d'un proxy LDAP. Je donnerai également quelques conseils
sur l'opportunité d'une implémentation de services proxy.
Un proxy LDAP est un médiateur entre un client LDAP et une ou plusieurs
ressources compatibles LDAP, généralement des serveurs
Windows NT Terminal Server en action
Lorsque Microsoft a signé un accord avec Citrix pour acquérir la licence de WinFrame et développer l'édition Terminal Server de Windows NT Server 4.0, de nombreux observateurs se sont demandés comment ce nouveau produit allait changer la vie des utilisateurs de Windows NT. La réponse m'a été apportée par la pratique. La promesse, faite par Terminal Server, d'associer le meilleure des fonctions multiutilisateurs de WinFrame avec les fonctions et l'interface de NT 4.0 m'a semblé séduisante dès son annonce. Mais j'attendais l'occasion de tester Terminal Server dans la réalité pour voir comment il allait se comporter. Elle s'est présentée à moi récemment lorsqu'un de mes clients m'a appelé pour résoudre un problème. C'est Terminal Server qui m'a permis de le résoudre. Voici comment.
Lire l'articleMigrer vos domaines vers Active Directory sans soucis
Windows 2000 constituera la plus importante mise à jour de Windows NT Server depuis son lancement il y a cinq ans. L'aspect le plus important de sa mise en oeuvre est la migration de votre structure de domaines existante vers Active Directory. Cet article décrit le processus de migration des domaines de Windows NT 4.0 ou 3.x vers AD. Si votre entreprise ne compte qu'un seul domaine, votre migration vers Windows 2000 sera très simple (tout du moins pour ce qui est d'Active directory. Mais si votre modèle de domaine est complexe, avec une administration décentralisée, vous devez étudier vos options et préparer un plan de migration. Microsoft rappelle qu'il est possible de migrer serveur par serveur, une flexibilité qui tient au fait que les nouveaux serveurs Windows 2000 se présentent comme des serveurs NT 4.0 aux postes de travail NT 4.0 et 3.51.
Lire l'articleProtégez les privilèges d’administrateur
Obtenir un accès en tant qu'administrateur est le coup de maître pour un hacker. La protection de vos privilèges d'administrateur doit donc figurer en tête de vos priorités de sécurité. Cependant, préserver vos comptes d'administrateurs est plus compliqué que le simple ajout d'un mot de passe.Les particularités et bugs de Windows NT, ainsi que les paramétrages par défaut trop faibles de l'OS, sont autant de failles que les hackers peuvent exploiter pour prendre le contrôle de vos systèmes. De nombreux administrateurs systèmes surchargés pallient ce problème en utilisant des pratiques d'administration bien connues mais peu sûres. Pour protéger et surveiller vos comptes d'administrateurs, il est impératif de comprendre ces faiblesses.
Lire l'articleUtiliser Microsoft Repository
par Patrick Cross et Saeed Rahimi
Appuyez-vous sur la technologie des référentiels de données pour offrir aux utilisateurs
les meilleures sources d'informations stratégiques possibles
Ces quelques dernières années, les meilleures pratiques en matière d'entreposage
de données (data warehousing) impliquent l'utilisation d'un référentiel pour stocker
des informations sur les données contenues dans l'entrepôt. Les informations du
référentiel permettent à l'utilisateur de mesurer l'impact des modifications,
de suivre et de gérer les problèmes, et de mieux appréhender les données qu'ils
utilisent pour prendre des décisions stratégiques. Microsoft Repository est un
élément important de la stratégie Microsoft en matière de data warehousing. Avec
les exemples suivants, vous comprendrez et utiliserez le référentiel de façon
plus efficace.
La fenêtre de tir de Novell
Aucune société n'a autant profité du retard à l'allumage de Windows 2000 que Novell. En mars 1999, Novell a commencé les livraisons de NetWare 5.1, après un programme de beta concernant 490.000 personnes. NetWare 5.1 offre tous les outils nécessaires pour s'intégrer avec Windows 2000 et former un environnement hétérogène. Ces outils ont recueilli de nombreux éloges dans la presse.
Lire l'articleComment se faire payer on-line
Les options de paiement électronique se multiplient : faites votre choix avec
précaution.
Que votre entreprise soit traditionnelle ou un
commerce on-line, les clients doivent vous payer vos produits et services. Une
entreprise traditionnelle se sentira probablement plus à l'aise en recevant des
espèces et des chèques.
Toutefois, bien que l'argent liquide soit en principe une valeur sûre, un chèque
est moins sûr.
En effet, même après avoir réceptionné un chèque, on ne peut pas encore être certain
de l'encaisser. Ce n'est que quelques jours plus tard, lorsque la banque encaissera
le chèque que l'on a déposé que l'on peut être sûr d'avoir été payé.
Le paiement par le biais de certaines transactions financières électroniques offre
plus de garanties.
De plus, pour les entreprises on-line, être capable de gérer les modes de paiement
électroniques est une nécessité Les banques préfèrent les transactions électroniques
car elles sont plus efficaces et moins chères à gérer. Avec l'EDI, par exemple,
une entreprise cliente peut envoyer un ordre de paiement à sa banque afin que
celle-ci transfère des fonds à la banque du fournisseur électroniquement. La banque
réceptrice notifie le fournisseur de la date et du montant du transfert à l'avance,
de sorte que l'entreprise puisse organiser et planifier sa trésorerie.
Cependant, nous devons désormais faire face à un nouveau défi : les informations
concernant les ordres de paiement et de versement circulent sur l'Internet.
Quelles sont les possibilités de paiement que les consommateurs et les entreprises
peuvent utiliser sur le Web, et quels sont leurs degrés de fiabilité ?
Les banques prévoient deux types de paiement pour les transactions de commerce
électronique : des mécanismes de paiement en temps réel (porte-monnaie électroniques,
cartes à puce) et des mécanismes de paiement différés (chèques électroniques,
cartes de paiement, cartes de crédit).
La moitié des différends et fraudes liés à l'usage des cartes de crédit concernent
des transactions on-line, qui ne représentent que 2% des volumes
Optimiser les applications pour Terminal Server
L'un des aspects les plus épineux de l'installation d'un système informatique
basé sur les clients légers est de faire fonctionner pour plusieurs utilisateurs
des applications conçues pour un utilisateur unique. Windows NT Server 4.0 édition
Terminal Server risque donc de rencontrer des problèmes avec certaines applications.
Toutes les applications ne fonctionnent pas correctement en environnement multiutilisateur.
Certaines utilisent trop de cycles de processeur ou trop de mémoire, d'autres
ne savent pas s'il faut appliquer des paramètres à un utilisateur ou à un ordinateur,
et certaines stockent les informations dans des emplacements inadaptés à un OS
multiutilisateur.
Il arrive même de se retrouver bloqué par ces problèmes et, pour les applications
de ce type, de devoir les exécuter à partir de l'ordinateur client. Heureusement
certains problèmes peuvent se résoudre, à condition de leur consacrer un peu de
temps.Les applications ne fonctionnent pas toutes avec Terminal Server, mais les
astuces présentées ici vous aideront à tuner celles pour lesquelles c'est le cas.
Le SMP n’est plus seulement une affaire de serveurs
Lors de la sortie par Microsoft de Windows NT 3.5, j'ai décidé d'utiliser NT sur mon PC de bureau. J'en avais assez de la tendance de Windows 3.x à planter à des moments inopportuns et mon activité ne m'obligeait pas à exécuter des applications anciennes que NT ne pouvait pas traiter. Pour moi, cette migration était la bonne décision.
Lire l'article