Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pb Table Temporaire dans un Projet Access

4 réponses
Avatar
alex
Bonjour,
J'ai créé une Table Temporaire, cependant j'arrive pas à la mettre en tant
que source d'une Zone de liste modifiable, est-ce possible?
(ex : Select * From #MaTable, marche en sql,mais pas en tant que source pour
un contrôle)

Config : Access2000 avec MSDE 2000

Merci pour votre aide

4 réponses

Avatar
Sylvain Lafontaine
Où est créée cette table temporaire et où est situé ce Select? Les deux
dans la même procédure stockée (Stored Procedure, SP ou PS) ou séparés dans
des PS différentes? Pour pouvoir utiliser une table temporaire comme source
d'une zone de liste modifiable ou d'une boîte déroulante (lixtbox,
combobox); la table temporaire doit être créée dans une PS, le Select situé
à la fin de cette PS et cette PS utilisée directement comme source du
combobox.

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"alex" wrote in message
news:
Bonjour,
J'ai créé une Table Temporaire, cependant j'arrive pas à la mettre en tant
que source d'une Zone de liste modifiable, est-ce possible?
(ex : Select * From #MaTable, marche en sql,mais pas en tant que source
pour un contrôle)

Config : Access2000 avec MSDE 2000

Merci pour votre aide



Avatar
alex
Bonjour Sylvain,
Ma Table Temporaire se trouve sur mon Serveur SQL dans TempDB,avec
l'instruction : Select * Into #Tempo From CustomerLa Prcédure Stockée
:Create Procedure MyProcedure
@ville nvarchar(15)
AS
SELECT CustomerID, CompanyName
FROM #Tempo
WHERE city = @villeRenseignement de la source du contrôle dans un Form
Access:Me.cboCompany.RowSource = "EXEC MyProcedure '" & PARIS & "'"Cela
Marche si je remplace ma table temporaire '#Tempo' par une Table comme
'Customer' par exemple!J'ai essayé en mettant la création de la table
temporaire dans la procédure :- L'instruction dans ManagementStudio : EXEC
MyProcedure 'PARIS', me renvoi bien mes lignes, mais en paramètre du
.rowsource dans le Form Access il ne renvoi plus aucune ligne.De plus la
table Temporaire n'est plus crée dans TempDB, elle a une portée uniquement
au niveau de la procédure stockée.

"Sylvain Lafontaine" <sylvain aei ca (fill the blanks, no spam please)> a
écrit dans le message de news:
Où est créée cette table temporaire et où est situé ce Select? Les deux
dans la même procédure stockée (Stored Procedure, SP ou PS) ou séparés
dans des PS différentes? Pour pouvoir utiliser une table temporaire comme
source d'une zone de liste modifiable ou d'une boîte déroulante (lixtbox,
combobox); la table temporaire doit être créée dans une PS, le Select
situé à la fin de cette PS et cette PS utilisée directement comme source
du combobox.

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"alex" wrote in message
news:
Bonjour,
J'ai créé une Table Temporaire, cependant j'arrive pas à la mettre en
tant que source d'une Zone de liste modifiable, est-ce possible?
(ex : Select * From #MaTable, marche en sql,mais pas en tant que source
pour un contrôle)

Config : Access2000 avec MSDE 2000

Merci pour votre aide







Avatar
Sylvain Lafontaine
En demandant où est située la table temporaire, je ne voulais pas savoir si
elle est située dans TempDB mais où est créée cette table temporaire dans
Access ou, ce qui revient au même, où et comment est appelée l'instruction
de création « Select * into #Tempo » dans Access.

Les tables temporaires sont fortement associées à la connection qui les
crée. Access (ADP) utilise trois connections et quelque fois une quatrième
pour communiquer avec SQL-Server. Les tables temporaires créées avec une
connection ne peuvent être vues à partir des autres connections. Si vous
voulez accéder à une table temporaire à partir d'un combobox, vous devez
utiliser exactement la même connection pour créer cette table temporaire que
la connection utilisée par ce combobox pour appeler sa source de données
(votre PS ici). Inutile de dire que c'est très difficile de remplir cette
contrainte lorsque vous travailler avec ADP.

(Au problème des connections, il faut également ajouter le problème de
pooling, qui peut intervenir ici mais je n'ai jamais étudié la chose en
profondeur dans le cas d'ADP).

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"alex" wrote in message
news:
Bonjour Sylvain,
Ma Table Temporaire se trouve sur mon Serveur SQL dans TempDB,avec
l'instruction : Select * Into #Tempo From CustomerLa Prcédure Stockée
:Create Procedure MyProcedure
@ville nvarchar(15)
AS
SELECT CustomerID, CompanyName
FROM #Tempo
WHERE city = @villeRenseignement de la source du contrôle dans un Form
Access:Me.cboCompany.RowSource = "EXEC MyProcedure '" & PARIS & "'"Cela
Marche si je remplace ma table temporaire '#Tempo' par une Table comme
'Customer' par exemple!J'ai essayé en mettant la création de la table
temporaire dans la procédure :- L'instruction dans ManagementStudio : EXEC
MyProcedure 'PARIS', me renvoi bien mes lignes, mais en paramètre du
.rowsource dans le Form Access il ne renvoi plus aucune ligne.De plus la
table Temporaire n'est plus crée dans TempDB, elle a une portée uniquement
au niveau de la procédure stockée.

"Sylvain Lafontaine" <sylvain aei ca (fill the blanks, no spam please)> a
écrit dans le message de news:
Où est créée cette table temporaire et où est situé ce Select? Les deux
dans la même procédure stockée (Stored Procedure, SP ou PS) ou séparés
dans des PS différentes? Pour pouvoir utiliser une table temporaire
comme source d'une zone de liste modifiable ou d'une boîte déroulante
(lixtbox, combobox); la table temporaire doit être créée dans une PS, le
Select situé à la fin de cette PS et cette PS utilisée directement comme
source du combobox.

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"alex" wrote in message
news:
Bonjour,
J'ai créé une Table Temporaire, cependant j'arrive pas à la mettre en
tant que source d'une Zone de liste modifiable, est-ce possible?
(ex : Select * From #MaTable, marche en sql,mais pas en tant que source
pour un contrôle)

Config : Access2000 avec MSDE 2000

Merci pour votre aide











Avatar
alex
Bonjour,

Merci pour tes réponses Sylvain.

Quelles sont les 4 types de connection utilisées ?
comment est appelée l'instruction de création « Select * into #Tempo »
dans Access :



Private Sub Form_Open
Dim Chrsql as String
Chrsql ="Select * into dbo.#Tempo from dbo.Customer"
Docmd.RunSql(Chrsql)
End Sub

Et après comment indiquer la table #Tempo comme source du combo de mon Form?
Merci

"Sylvain Lafontaine" <sylvain aei ca (fill the blanks, no spam please)> a
écrit dans le message de news: %
En demandant où est située la table temporaire, je ne voulais pas savoir
si elle est située dans TempDB mais où est créée cette table temporaire
dans Access ou, ce qui revient au même, où et .

Les tables temporaires sont fortement associées à la connection qui les
crée. Access (ADP) utilise trois connections et quelque fois une
quatrième pour communiquer avec SQL-Server. Les tables temporaires créées
avec une connection ne peuvent être vues à partir des autres connections.
Si vous voulez accéder à une table temporaire à partir d'un combobox, vous
devez utiliser exactement la même connection pour créer cette table
temporaire que la connection utilisée par ce combobox pour appeler sa
source de données (votre PS ici). Inutile de dire que c'est très
difficile de remplir cette contrainte lorsque vous travailler avec ADP.

(Au problème des connections, il faut également ajouter le problème de
pooling, qui peut intervenir ici mais je n'ai jamais étudié la chose en
profondeur dans le cas d'ADP).

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"alex" wrote in message
news:
Bonjour Sylvain,
Ma Table Temporaire se trouve sur mon Serveur SQL dans TempDB,avec
l'instruction : Select * Into #Tempo From CustomerLa Prcédure Stockée
:Create Procedure MyProcedure
@ville nvarchar(15)
AS
SELECT CustomerID, CompanyName
FROM #Tempo
WHERE city = @villeRenseignement de la source du contrôle dans un Form
Access:Me.cboCompany.RowSource = "EXEC MyProcedure '" & PARIS & "'"Cela
Marche si je remplace ma table temporaire '#Tempo' par une Table comme
'Customer' par exemple!J'ai essayé en mettant la création de la table
temporaire dans la procédure :- L'instruction dans ManagementStudio :
EXEC MyProcedure 'PARIS', me renvoi bien mes lignes, mais en paramètre du
.rowsource dans le Form Access il ne renvoi plus aucune ligne.De plus la
table Temporaire n'est plus crée dans TempDB, elle a une portée
uniquement au niveau de la procédure stockée.

"Sylvain Lafontaine" <sylvain aei ca (fill the blanks, no spam please)> a
écrit dans le message de news:
Où est créée cette table temporaire et où est situé ce Select? Les deux
dans la même procédure stockée (Stored Procedure, SP ou PS) ou séparés
dans des PS différentes? Pour pouvoir utiliser une table temporaire
comme source d'une zone de liste modifiable ou d'une boîte déroulante
(lixtbox, combobox); la table temporaire doit être créée dans une PS, le
Select situé à la fin de cette PS et cette PS utilisée directement comme
source du combobox.

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: sylvain aei ca (fill the blanks, no spam please)


"alex" wrote in message
news:
Bonjour,
J'ai créé une Table Temporaire, cependant j'arrive pas à la mettre en
tant que source d'une Zone de liste modifiable, est-ce possible?
(ex : Select * From #MaTable, marche en sql,mais pas en tant que source
pour un contrôle)

Config : Access2000 avec MSDE 2000

Merci pour votre aide