bonjour,
j'utilise yukon express 2005 pour generer toutes mes procedures sous
forme de script grâce à l'assistant. En fait j'ai écrit environ 60 SP
mais maintenant je souhaite les mettre sous forme de script pour les
conserver. Mon probleme vient du fait qd il les genere automatiquement
le script SQL il me met des ' n'importe ou du coup yukon prend la moitie
de la SP pour un commentaire.
Savez comment je peux faire pour resoudre ce bug tres ennuyeux ??
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Chris
Chris a écrit :
bonjour, j'utilise yukon express 2005 pour generer toutes mes procedures sous forme de script grâce à l'assistant. En fait j'ai écrit environ 60 SP mais maintenant je souhaite les mettre sous forme de script pour les conserver. Mon probleme vient du fait qd il les genere automatiquement le script SQL il me met des ' n'importe ou du coup yukon prend la moitie de la SP pour un commentaire.
Savez comment je peux faire pour resoudre ce bug tres ennuyeux ??
merci
voici un exemple de ce que l'assistant genere
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_s_MO]') AND type in (N'P', N'PC')) BEGIN EXEC dbo.sp_executesql @statement = N' CREATE PROCEDURE [dbo].[sp_s_MO] @ID int AS BEGIN SET NOCOUNT ON;
if @ID = 0 --si on veut la liste des MO
SELECT [Id_MO] as Code ,[Libelle], [MontantHT] as [Montant HT] FROM [MO] ORDER BY Code
else --on souhaite une MO suivant son ID SELECT [Id_MO] ,[Libelle] ,[MontantHT] ,[TxTVAFr] ,[CptVenteFr] ,[CptAchatFr] ,[TxTVAHorsFr] ,[CptVenteHorsFr] ,[CptAchatHorsFr] ,[CptCessionInterne] ,[DateCreation] FROM [MO] WHERE Id_MO = @ID END
'
Chris a écrit :
bonjour,
j'utilise yukon express 2005 pour generer toutes mes procedures sous
forme de script grâce à l'assistant. En fait j'ai écrit environ 60 SP
mais maintenant je souhaite les mettre sous forme de script pour les
conserver. Mon probleme vient du fait qd il les genere automatiquement
le script SQL il me met des ' n'importe ou du coup yukon prend la moitie
de la SP pour un commentaire.
Savez comment je peux faire pour resoudre ce bug tres ennuyeux ??
merci
voici un exemple de ce que l'assistant genere
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id =
OBJECT_ID(N'[dbo].[sp_s_MO]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'
CREATE PROCEDURE [dbo].[sp_s_MO]
@ID int
AS
BEGIN
SET NOCOUNT ON;
if @ID = 0 --si on veut la liste des MO
SELECT [Id_MO] as Code ,[Libelle], [MontantHT] as [Montant HT] FROM
[MO] ORDER BY Code
else --on souhaite une MO suivant son ID
SELECT [Id_MO]
,[Libelle]
,[MontantHT]
,[TxTVAFr]
,[CptVenteFr]
,[CptAchatFr]
,[TxTVAHorsFr]
,[CptVenteHorsFr]
,[CptAchatHorsFr]
,[CptCessionInterne]
,[DateCreation]
FROM [MO]
WHERE Id_MO = @ID
END
bonjour, j'utilise yukon express 2005 pour generer toutes mes procedures sous forme de script grâce à l'assistant. En fait j'ai écrit environ 60 SP mais maintenant je souhaite les mettre sous forme de script pour les conserver. Mon probleme vient du fait qd il les genere automatiquement le script SQL il me met des ' n'importe ou du coup yukon prend la moitie de la SP pour un commentaire.
Savez comment je peux faire pour resoudre ce bug tres ennuyeux ??
merci
voici un exemple de ce que l'assistant genere
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_s_MO]') AND type in (N'P', N'PC')) BEGIN EXEC dbo.sp_executesql @statement = N' CREATE PROCEDURE [dbo].[sp_s_MO] @ID int AS BEGIN SET NOCOUNT ON;
if @ID = 0 --si on veut la liste des MO
SELECT [Id_MO] as Code ,[Libelle], [MontantHT] as [Montant HT] FROM [MO] ORDER BY Code
else --on souhaite une MO suivant son ID SELECT [Id_MO] ,[Libelle] ,[MontantHT] ,[TxTVAFr] ,[CptVenteFr] ,[CptAchatFr] ,[TxTVAHorsFr] ,[CptVenteHorsFr] ,[CptAchatHorsFr] ,[CptCessionInterne] ,[DateCreation] FROM [MO] WHERE Id_MO = @ID END
'
Sylvain Lafontaine
Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr que cela ne fonctionnait pas?
De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos procédures stockées puisqu'il a une signification spéciale pour SQL-Server.
-- Sylvain Lafontaine, ing. MVP - Technologies Virtual-PC E-mail: http://cerbermail.com/?QugbLEWINF
"Chris" wrote in message news:
Chris a écrit :
bonjour, j'utilise yukon express 2005 pour generer toutes mes procedures sous forme de script grâce à l'assistant. En fait j'ai écrit environ 60 SP mais maintenant je souhaite les mettre sous forme de script pour les conserver. Mon probleme vient du fait qd il les genere automatiquement le script SQL il me met des ' n'importe ou du coup yukon prend la moitie de la SP pour un commentaire.
Savez comment je peux faire pour resoudre ce bug tres ennuyeux ??
merci
voici un exemple de ce que l'assistant genere
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_s_MO]') AND type in (N'P', N'PC')) BEGIN EXEC dbo.sp_executesql @statement = N' CREATE PROCEDURE [dbo].[sp_s_MO] @ID int AS BEGIN SET NOCOUNT ON;
if @ID = 0 --si on veut la liste des MO
SELECT [Id_MO] as Code ,[Libelle], [MontantHT] as [Montant HT] FROM [MO] ORDER BY Code
else --on souhaite une MO suivant son ID SELECT [Id_MO] ,[Libelle] ,[MontantHT] ,[TxTVAFr] ,[CptVenteFr] ,[CptAchatFr] ,[TxTVAHorsFr] ,[CptVenteHorsFr] ,[CptAchatHorsFr] ,[CptCessionInterne] ,[DateCreation] FROM [MO] WHERE Id_MO = @ID END
'
Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce
code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr
que cela ne fonctionnait pas?
De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos
procédures stockées puisqu'il a une signification spéciale pour SQL-Server.
--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: http://cerbermail.com/?QugbLEWINF
"Chris" <chris@nospam.fr> wrote in message
news:e0WcJ0MpGHA.4192@TK2MSFTNGP03.phx.gbl...
Chris a écrit :
bonjour,
j'utilise yukon express 2005 pour generer toutes mes procedures sous
forme de script grâce à l'assistant. En fait j'ai écrit environ 60 SP
mais maintenant je souhaite les mettre sous forme de script pour les
conserver. Mon probleme vient du fait qd il les genere automatiquement le
script SQL il me met des ' n'importe ou du coup yukon prend la moitie de
la SP pour un commentaire.
Savez comment je peux faire pour resoudre ce bug tres ennuyeux ??
merci
voici un exemple de ce que l'assistant genere
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id =
OBJECT_ID(N'[dbo].[sp_s_MO]') AND type in (N'P', N'PC'))
BEGIN
EXEC dbo.sp_executesql @statement = N'
CREATE PROCEDURE [dbo].[sp_s_MO]
@ID int
AS
BEGIN
SET NOCOUNT ON;
if @ID = 0 --si on veut la liste des MO
SELECT [Id_MO] as Code ,[Libelle], [MontantHT] as [Montant HT] FROM [MO]
ORDER BY Code
else --on souhaite une MO suivant son ID
SELECT [Id_MO]
,[Libelle]
,[MontantHT]
,[TxTVAFr]
,[CptVenteFr]
,[CptAchatFr]
,[TxTVAHorsFr]
,[CptVenteHorsFr]
,[CptAchatHorsFr]
,[CptCessionInterne]
,[DateCreation]
FROM [MO]
WHERE Id_MO = @ID
END
Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr que cela ne fonctionnait pas?
De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos procédures stockées puisqu'il a une signification spéciale pour SQL-Server.
-- Sylvain Lafontaine, ing. MVP - Technologies Virtual-PC E-mail: http://cerbermail.com/?QugbLEWINF
"Chris" wrote in message news:
Chris a écrit :
bonjour, j'utilise yukon express 2005 pour generer toutes mes procedures sous forme de script grâce à l'assistant. En fait j'ai écrit environ 60 SP mais maintenant je souhaite les mettre sous forme de script pour les conserver. Mon probleme vient du fait qd il les genere automatiquement le script SQL il me met des ' n'importe ou du coup yukon prend la moitie de la SP pour un commentaire.
Savez comment je peux faire pour resoudre ce bug tres ennuyeux ??
merci
voici un exemple de ce que l'assistant genere
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sp_s_MO]') AND type in (N'P', N'PC')) BEGIN EXEC dbo.sp_executesql @statement = N' CREATE PROCEDURE [dbo].[sp_s_MO] @ID int AS BEGIN SET NOCOUNT ON;
if @ID = 0 --si on veut la liste des MO
SELECT [Id_MO] as Code ,[Libelle], [MontantHT] as [Montant HT] FROM [MO] ORDER BY Code
else --on souhaite une MO suivant son ID SELECT [Id_MO] ,[Libelle] ,[MontantHT] ,[TxTVAFr] ,[CptVenteFr] ,[CptAchatFr] ,[TxTVAHorsFr] ,[CptVenteHorsFr] ,[CptAchatHorsFr] ,[CptCessionInterne] ,[DateCreation] FROM [MO] WHERE Id_MO = @ID END
'
Chris
Sylvain Lafontaine a écrit :
Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr que cela ne fonctionnait pas?
De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos procédures stockées puisqu'il a une signification spéciale pour SQL-Server.
en fait je viens de le retester et c passer, donc l'erreur devait venir de mon code. SInon pour le sp_ je ne savais pas, que cela veut il dire pour SQL Server ?
merci
Sylvain Lafontaine a écrit :
Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce
code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr
que cela ne fonctionnait pas?
De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos
procédures stockées puisqu'il a une signification spéciale pour SQL-Server.
en fait je viens de le retester et c passer, donc l'erreur devait venir
de mon code. SInon pour le sp_ je ne savais pas, que cela veut il dire
pour SQL Server ?
Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr que cela ne fonctionnait pas?
De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos procédures stockées puisqu'il a une signification spéciale pour SQL-Server.
en fait je viens de le retester et c passer, donc l'erreur devait venir de mon code. SInon pour le sp_ je ne savais pas, que cela veut il dire pour SQL Server ?
merci
SQLpro
lorsque vous préfixez une procédure stockée par "sp_" MS SQL Server perd beaucoup de temps a aller voir si elle existe d'abord dans la base master (proc système). En effet, ce préfixe est le tag pour dire à MS SQL Server : tiens voila une procédure qui devrait se situer dans master... De plus si master contient une procédure de ce nom, ce sera celle de master qui sera exécutée.
DEMO :
CREATE DATABASE MA_BASE_TEST GO
USE MA_BASE_TEST GO
CREATE PROCEDURE sp_help @table_name sysname AS
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'SELECT * FROM ' + @table_name
EXEC (@SQL)
GO
EXEC sp_help 'sysobjects' --> celle de master sera exécutée !
EXEC MA_BASE_TEST.dbo.sp_help 'sysobjects' --> celle de master sera exécutée !
Votre procédure est inaccessible !!!
A +
Frédéric BROUARD - SQLpro - MVP SQL Server Expert SQL, SGBDR, modélisation de données SQL et SGBDR http://sqlpro.developpez.com/ Formations, conseils, audit, modélisation, optimisation, tuning : www.datasapiens.com
"Chris" a écrit :
Sylvain Lafontaine a écrit : > Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce > code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr > que cela ne fonctionnait pas? > > De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos > procédures stockées puisqu'il a une signification spéciale pour SQL-Server. > en fait je viens de le retester et c passer, donc l'erreur devait venir de mon code. SInon pour le sp_ je ne savais pas, que cela veut il dire pour SQL Server ?
merci
lorsque vous préfixez une procédure stockée par "sp_" MS SQL Server perd
beaucoup de temps a aller voir si elle existe d'abord dans la base master
(proc système). En effet, ce préfixe est le tag pour dire à MS SQL Server :
tiens voila une procédure qui devrait se situer dans master... De plus si
master contient une procédure de ce nom, ce sera celle de master qui sera
exécutée.
DEMO :
CREATE DATABASE MA_BASE_TEST
GO
USE MA_BASE_TEST
GO
CREATE PROCEDURE sp_help @table_name sysname
AS
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'SELECT * FROM ' + @table_name
EXEC (@SQL)
GO
EXEC sp_help 'sysobjects' --> celle de master sera exécutée !
EXEC MA_BASE_TEST.dbo.sp_help 'sysobjects' --> celle de master sera exécutée !
Votre procédure est inaccessible !!!
A +
Frédéric BROUARD - SQLpro - MVP SQL Server
Expert SQL, SGBDR, modélisation de données
SQL et SGBDR http://sqlpro.developpez.com/
Formations, conseils, audit, modélisation,
optimisation, tuning : www.datasapiens.com
"Chris" a écrit :
Sylvain Lafontaine a écrit :
> Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce
> code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr
> que cela ne fonctionnait pas?
>
> De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos
> procédures stockées puisqu'il a une signification spéciale pour SQL-Server.
>
en fait je viens de le retester et c passer, donc l'erreur devait venir
de mon code. SInon pour le sp_ je ne savais pas, que cela veut il dire
pour SQL Server ?
lorsque vous préfixez une procédure stockée par "sp_" MS SQL Server perd beaucoup de temps a aller voir si elle existe d'abord dans la base master (proc système). En effet, ce préfixe est le tag pour dire à MS SQL Server : tiens voila une procédure qui devrait se situer dans master... De plus si master contient une procédure de ce nom, ce sera celle de master qui sera exécutée.
DEMO :
CREATE DATABASE MA_BASE_TEST GO
USE MA_BASE_TEST GO
CREATE PROCEDURE sp_help @table_name sysname AS
DECLARE @SQL VARCHAR(8000)
SET @SQL = 'SELECT * FROM ' + @table_name
EXEC (@SQL)
GO
EXEC sp_help 'sysobjects' --> celle de master sera exécutée !
EXEC MA_BASE_TEST.dbo.sp_help 'sysobjects' --> celle de master sera exécutée !
Votre procédure est inaccessible !!!
A +
Frédéric BROUARD - SQLpro - MVP SQL Server Expert SQL, SGBDR, modélisation de données SQL et SGBDR http://sqlpro.developpez.com/ Formations, conseils, audit, modélisation, optimisation, tuning : www.datasapiens.com
"Chris" a écrit :
Sylvain Lafontaine a écrit : > Je n'ai pas d'installation SQL-Server Express 2005 pour l'essayer mais ce > code m'a l'air parfaitement normal et OK. L'avez-vous essayé pour être sûr > que cela ne fonctionnait pas? > > De plus, vous ne devriez jamais utiliser le préfixe sp_ pour le nom de vos > procédures stockées puisqu'il a une signification spéciale pour SQL-Server. > en fait je viens de le retester et c passer, donc l'erreur devait venir de mon code. SInon pour le sp_ je ne savais pas, que cela veut il dire pour SQL Server ?