Précédent   Forum des professionnels en informatique > Bases de données > Sybase
Sybase Forum sur la base de données Sybase. Avant de poster -> F.A.Q Sybase, Tutoriels Sybase
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 08/09/2006, 11h41   #1
Membre habitué
 
Inscription : mars 2006
Messages : 293
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 293
Points : 140
Points : 140
Par défaut [T-SQL]Lenteur de prock stock + pas de log

Bonjour à vous j'ai une proc stock qui met bcp de temps pour s'exécuter et je ne comprend âs pourquoi cela pose tant de problème pour un simple update .
Voici mon code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
CREATE PROC updatesector ( @issuer char(20) = NULL ,
@sector char(15) = NULL) AS
 
 
 
IF @issuer = NULL OR @sector = NULL
BEGIN
RETURN 50000
END
 
BEGIN TRAN
 
 
UPDATE SE_ISS_DBF
SET M_SECTOR=@sector
WHERE M_SNAME=@issuer
 
 
UPDATE MPY_RSKC_DBF
SET M_SECTOR=@sector
WHERE M_ISSUER=@issuer
 
 
COMMIT TRAN
 
RETURN 0
En plus dans mon soucis de "débuggage" je voudrais des logs sur l"exécution de ma proc, qui je le signale fonctionne mais est tres lente (3-4 secodes).
Le begintran et commit me sert'il ou pas ?? ou est loggé (si elle est loggé..) mon action ?
Merci de m'aider
A+
arona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2006, 19h44   #2
Rédacteur/Modérateur
 
Inscription : janvier 2006
Messages : 1 301
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : janvier 2006
Messages : 1 301
Points : 1 505
Points : 1 505
Envoyer un message via AIM à mpeppler
La lenteur est sans doute causée par un chemin d'accès non-optimal pour l'un ou l'autre des deux UPDATE.

Il fait exécuter la proc avec l'option SET SHOWPLAN ON et SET STATSTICS IO ON. Cela permet ensuite de determiner quel plan d'accès est utilisé (quel index, ou y a-t-il un table scan, etc.)

Pour ce qui est des BEGIN/COMMIT TRAN, ils ne servent pas à logger l'opération à proprement parler, mais bien à s'assurrer que les deux updates soient effecté en un seul bloc.

Michael
__________________
Michael Peppler
Membre de TeamSybase - www.teamsybase.com

"A successful [software] tool is one that was used to do something undreamed of by its author." -- S. C. Johnson
mpeppler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2006, 11h08   #3
Membre habitué
 
Inscription : mars 2006
Messages : 293
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 293
Points : 140
Points : 140
Oui merci ..
Sorry j'ai pas clos le thread.
arona est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h38.


 
 
 
 
Partenaires

Hébergement Web