OVH Cloud OVH Cloud

connexion associée

6 réponses
Avatar
ABT
Bonjour;
Je chercher des expilications sur la notion des connexions associées et
comment l'utiliser.
Merci

6 réponses

Avatar
gfourrat
Salut,
Un peu plus de détails peut-être ?

Cordialement,

Guillaume Fourrat
Microsoft France
--------------------
From: "ABT"
Subject: connexion associée
Date: Thu, 23 Oct 2003 10:13:25 +0100
Lines: 6

Bonjour;
Je chercher des expilications sur la notion des connexions associées et
comment l'utiliser.
Merci





Avatar
ABT
C'est à dire comment créer des connexions qui peuvent se partager le même
contexte transactionnelle( les verrous sur les resources) et est ce qu'on
crée cette connexion côté ou côté serveur. Comment je peux gérer cette
connexion sachant que j'ai une application où chaque utilisateur posséde une
connexion independante.
Merci

""Guillaume Fourrat [MSFT]"" a écrit dans le
message news:
Salut,
Un peu plus de détails peut-être ?

Cordialement,

Guillaume Fourrat
Microsoft France
--------------------
>From: "ABT"
>Subject: connexion associée
>Date: Thu, 23 Oct 2003 10:13:25 +0100
>Lines: 6
>
>Bonjour;
>Je chercher des expilications sur la notion des connexions associées et
>comment l'utiliser.
>Merci
>
>
>



Avatar
Patrice Scribe
De mon côté, je ne vois pas très bien ce que tu veux dire. Si tu as une
appli client/serveur, chaque client a sa propre connexion au serveur.
Ensuite les transactions peuvent être plus ou moins isolées les unes des
autres en fonction de ce que tu veux faire(SET TRANSACTION ISOLATION). Cela
m'évoque aussi très vaguement le "pooling" des connections.

A moins que quelqu'un d'autre voit de quoi il s'agit, je te suggère de dire
plutôt quel est le problème que tu cherches à résoudre....

Patrice

--

"ABT" a écrit dans le message de
news:%
C'est à dire comment créer des connexions qui peuvent se partager le même
contexte transactionnelle( les verrous sur les resources) et est ce qu'on
crée cette connexion côté ou côté serveur. Comment je peux gérer cette
connexion sachant que j'ai une application où chaque utilisateur posséde


une
connexion independante.
Merci

""Guillaume Fourrat [MSFT]"" a écrit dans


le
message news:
> Salut,
> Un peu plus de détails peut-être ?
>
> Cordialement,
>
> Guillaume Fourrat
> Microsoft France
> --------------------
> >From: "ABT"
> >Subject: connexion associée
> >Date: Thu, 23 Oct 2003 10:13:25 +0100
> >Lines: 6
> >
> >Bonjour;
> >Je chercher des expilications sur la notion des connexions associées


et
> >comment l'utiliser.
> >Merci
> >
> >
> >
>




Avatar
ABT
C'est cette isolation qui me cause un probléme car parfois j'ai besoin
(Dans une connexion C2 ) de lire et modifier les nouvelles donnés modfiées
d'une transaction T1 appartenant à une connexion C1 dans une tabel 'tab' qui
ne sont pas encore validées sans avoir besoin de mettre ses propres verrous
et ce ci en partageant le même contexte du transaction T1. Dans la Doc SQL
on parle du procedure systéme sp_getbind qui crée des jetons de partage
c'est cette aspect que je trouve pas assez clair.

"Patrice Scribe" a écrit dans le message news:

De mon côté, je ne vois pas très bien ce que tu veux dire. Si tu as une
appli client/serveur, chaque client a sa propre connexion au serveur.
Ensuite les transactions peuvent être plus ou moins isolées les unes des
autres en fonction de ce que tu veux faire(SET TRANSACTION ISOLATION).


Cela
m'évoque aussi très vaguement le "pooling" des connections.

A moins que quelqu'un d'autre voit de quoi il s'agit, je te suggère de


dire
plutôt quel est le problème que tu cherches à résoudre....

Patrice

--

"ABT" a écrit dans le message de
news:%
> C'est à dire comment créer des connexions qui peuvent se partager le


même
> contexte transactionnelle( les verrous sur les resources) et est ce


qu'on
> crée cette connexion côté ou côté serveur. Comment je peux gérer cette
> connexion sachant que j'ai une application où chaque utilisateur posséde
une
> connexion independante.
> Merci
>
> ""Guillaume Fourrat [MSFT]"" a écrit


dans
le
> message news:
> > Salut,
> > Un peu plus de détails peut-être ?
> >
> > Cordialement,
> >
> > Guillaume Fourrat
> > Microsoft France
> > --------------------
> > >From: "ABT"
> > >Subject: connexion associée
> > >Date: Thu, 23 Oct 2003 10:13:25 +0100
> > >Lines: 6
> > >
> > >Bonjour;
> > >Je chercher des expilications sur la notion des connexions associées
et
> > >comment l'utiliser.
> > >Merci
> > >
> > >
> > >
> >
>
>



Avatar
Med Bouchenafa [MVP]
Voici un exemple sur tempdb

Commençons par créer une table de test dans tempdb
SELECT * INTO tblTest FROM pubs.dbo.authors

Ouvrant deux connexions dans l'Analyseur de requêtes

1ere connexion
-----------------
DECLARE @bind_token varchar(255)
BEGIN TRAN
EXECUTE sp_getbindtoken @bind_token OUTPUT, 1
DELETE FROM tblTest WHERE state='CA'
SELECT @bind_token AS Token

Faire un copier/coller de la valeur affichée par @bind_token
Sur mon poste, cela donne ']kUb0Udeja?k8[4Bb5e?Z=5----eJ]--'
La transaction reste ouverte et un verrou exclusif est posé sur la table tblTest.
Aucune autre connexion ne peut normalement y accéder même en lecture
(je me positionne en niveau d'isolation standard)

2eme Connexion
-----------------
EXEC sp_bindsession ']kUb0Udeja?k8[4Bb5e?Z=5----eJ]--'
SELECT * FROM tblTest
On arrive alors à lire le contenu de la table tblTest comme si l'on était dans la même transaction
Toute autre connexion aurait été bloquée.

D'autre part, si je fais un SELECT @@TRANCOUNT sur cette deuxième connexion, je me retrouve avec 1
comme si j'avais réellement ouvert la transaction à partir de cette deuxième connexion. Je peux même
la committer ou la rollbacker.
C'est un véritable partage du contexte d'une transaction entre différentes connexions.

--
Salutations
Med Bouchenafa
TETRASET
75015 Paris




"ABT" a écrit dans le message de news: #
Bonjour;
Je chercher des expilications sur la notion des connexions associées et
comment l'utiliser.
Merci




Avatar
ABT
Merci pour les explications

"Med Bouchenafa [MVP]" a écrit dans le message
news:
Voici un exemple sur tempdb

Commençons par créer une table de test dans tempdb
SELECT * INTO tblTest FROM pubs.dbo.authors

Ouvrant deux connexions dans l'Analyseur de requêtes

1ere connexion
-----------------
DECLARE @bind_token varchar(255)
BEGIN TRAN
EXECUTE sp_getbindtoken @bind_token OUTPUT, 1
DELETE FROM tblTest WHERE state='CA'
SELECT @bind_token AS Token

Faire un copier/coller de la valeur affichée par @bind_token
Sur mon poste, cela donne ']kUb0Udeja?k8[4Bb5e?Z=5----eJ]--'
La transaction reste ouverte et un verrou exclusif est posé sur la table


tblTest.
Aucune autre connexion ne peut normalement y accéder même en lecture
(je me positionne en niveau d'isolation standard)

2eme Connexion
-----------------
EXEC sp_bindsession ']kUb0Udeja?k8[4Bb5e?Z=5----eJ]--'
SELECT * FROM tblTest
On arrive alors à lire le contenu de la table tblTest comme si l'on était


dans la même transaction
Toute autre connexion aurait été bloquée.

D'autre part, si je fais un SELECT @@TRANCOUNT sur cette deuxième


connexion, je me retrouve avec 1
comme si j'avais réellement ouvert la transaction à partir de cette


deuxième connexion. Je peux même
la committer ou la rollbacker.
C'est un véritable partage du contexte d'une transaction entre différentes


connexions.

--
Salutations
Med Bouchenafa
TETRASET
75015 Paris




"ABT" a écrit dans le message de news:


#
> Bonjour;
> Je chercher des expilications sur la notion des connexions associées et
> comment l'utiliser.
> Merci
>
>