Bonjour,
J'ai un problème qui viens certainement de Business Objects, mais j'aimerais comprendre pourquoi j'ai tout un paquet d'instruction SQL et pourquoi ça ne marche pas.
Je m'explique, je veux exécuter ça:La requête est générée par BO et le préfixe (SET...) à été défini dans les paramètres de connexion. Ce qui me semble correct.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SET TRANSACTION ISOLATION LEVEL SNAPSHOT SELECT V_DIM_PRO_LIB.PRO_C_PRO, V_DIM_PRO_LIB.PRO_LABEL FROM V_DIM_PRO_LIB
Dans le profiler je vois ça:Il n'y a pas de doc sur les procédures sp_xxx ni sur SET NO_BROWSETABLE
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
27
28
29
30
31
32
33
34
35
36 SET NO_BROWSETABLE ON -- declare @p1 int set @p1=1 exec sp_prepare @p1 output,NULL,N'SET DATEFORMAT YMD',1 select @p1 -- exec sp_execute 1 -- exec sp_unprepare 1 -- SET NO_BROWSETABLE OFF -- declare @p1 int set @p1=2 exec sp_prepexec @p1 output,NULL,N'SET TRANSACTION ISOLATION LEVEL SNAPSHOT' select @p1 -- exec sp_unprepare 2 -- SET NO_BROWSETABLE ON -- declare @p1 int set @p1=3 exec sp_prepare @p1 output,NULL,N'SELECT V_DIM_PRO_LIB.PRO_C_PRO, V_DIM_PRO_LIB.PRO_LABEL FROM V_DIM_PRO_LIB ',1 select @p1 -- exec sp_execute 3 -- exec sp_unprepare 3
BO, ne peut pas afficher le snapshot et se bloque.
Je ne peux pas exécuter le code tel quel dans Management Studio, mais celui là fonctionne correctement et donne bien l'état Snapshot:Est ce que quelqu'un sait ou a une idée pourquoi le lot d'instruction BO ne fonctionne pas alors que celui de management Studio marche bien?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 SET NO_BROWSETABLE ON SET DATEFORMAT YMD SET NO_BROWSETABLE OFF SET TRANSACTION ISOLATION LEVEL SNAPSHOT SET NO_BROWSETABLE ON SELECT V_DIM_PRO_LIB.PRO_C_PRO, V_DIM_PRO_LIB.PRO_LABEL FROM V_DIM_PRO_LIB
Est-ce que quelqu'un peut me dire ce qu'est :
SET NO_BROWSETABLE ON
sp_prepare
sp_execute
sp_unprepare
sp_prepexec ?
(Je suppose que qu'il s'agit de procédures pour des requêtes pré-compilées)
Merci
Partager