Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server
MS SQL-Server Forum Microsoft SQL-Server. Avant de poster -> FAQ SQL-Server, Tutoriels SQL-Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 06/10/2011, 19h31   #1
Nouveau Membre du Club
 
Inscription : septembre 2005
Messages : 181
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 181
Points : 37
Points : 37
Par défaut Performance et requêtes

Bonjour,

J'en suis à programmer un outil qui doit vérifier si tous les enregistrements existants dans un .MDB on été montés sur le serveur SQL. Il y a environ 10 tables avec plusieurs centaines de milliers d'enregistrements.

Est-ce qu'il y a beaucoup à gagner en employant des procédures stockées si on ne fait qu'une opération à la fois? Je m'explique, je vérifie un enregistrement à la fois si il existe sur le serveur. Si il n'existe pas, alors je le monte. Bien sûr, je fais la même chose pour les enfants de cet enregistrement et ainsi de suite ce qui prend un temps phénoménal. Bien sûr, il y a les clé étrangeres a mettre a jour.

Si je n'écris qu'un enregistrement à la fois sur mon PC ou à partir du serveur, quel est la différence en performance?

merci
acheo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2011, 08h34   #2
Membre Expert
 
Avatar de iberserk
 
Homme Bruno IGNACE
Architecte de base de données
Inscription : novembre 2004
Messages : 1 299
Détails du profil
Informations personnelles :
Nom : Homme Bruno IGNACE
Âge : 30
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Architecte de base de données
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : novembre 2004
Messages : 1 299
Points : 2 282
Points : 2 282
Envoyer un message via MSN à iberserk
Citation:
Si il n'existe pas, alors je le monte. Bien sûr, je fais la même chose pour les enfants de cet enregistrement et ainsi de suite ce qui prend un temps phénoménal.
Ici une procédure stockée, enfin plus exactement une seule requête pour ajouter/modifier TOUT vos enregistrement (ou au moins plusieurs à la fois) prends tout son sens en opposition à une approche non ensembliste...
__________________
Prendre conscience, c'est transformer le voile qui recouvre la lumière en miroir.
iberserk est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 07/10/2011, 15h44   #3
Modérateur

 
Avatar de elsuket
 
Homme Nicolas Souquet
Administrateur de base de données
Inscription : janvier 2005
Messages : 4 669
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Souquet
Âge : 30
Localisation : Thaïlande

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2005
Messages : 4 669
Points : 8 729
Points : 8 729
Bonjour,

Citation:
J'en suis à programmer un outil qui doit vérifier si tous les enregistrements existants dans un .MDB on été montés sur le serveur SQL. Il y a environ 10 tables avec plusieurs centaines de milliers d'enregistrements.
Vous confondez ce qu'est un fichier de bases de données et une base de données relationnelle SQL.
Si votre base de données est supportée par un fichier MDF et que vous interrogez une des tables qu'il contient, les tables sont là, avec leurs lignes et leurs colonnes... à moins que le fichier ou la table soient corrompus.
Donc votre vérification, telle que vous la décrivez, est inutile.

@++
__________________
En bases de données relationnelles SQL, il n'y a ni tableaux, ni enregistrements, ni champs: il y a des tables, des lignes et des colonnes.
Blog | Profil| Consulter ou télécharger les fichiers d'aide de SQL Server, des versions 2000 à 2012
elsuket est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h06.


 
 
 
 
Partenaires

Hébergement Web