-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Je me plante dès le Drop.
Denis a écrit:
Bonjour,
Je souhaiterais qu'une procédure stockée me crée une table dont le nom lui est passé en paramètre.
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Je me plante dès le Drop.
Denis a écrit:
Bonjour,
Je souhaiterais qu'une procédure stockée me crée une table dont le nom lui
est passé en paramètre.
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Je me plante dès le Drop.
Denis a écrit:
Bonjour,
Je souhaiterais qu'une procédure stockée me crée une table dont le nom lui est passé en paramètre.
Denis, Bien que je ne compend pas le besoin/la necessité de créer vos tables dynamiquement, mais attention au problème de sécurité si vous exposez de telle stored procedure, exécuter un paramètre passé a une SP avec un SQL dynamique peut créer des grandes failles de sécurité. A mon avis c'est pas la propre façon de créer une table dans SQL Server, vous devez le faire par des scripts d'update ou si tu n'as pas autre choix que de le faire dynamiquent ou a partir d'un client, l'utilisation de DMO (SQL2000) ou SMO (SQL2005) est plus appropriée.
"Fred BROUARD" wrote in message news:%
Il faut utiliser du SQL dynamique
CREATE PROCEDURE P_CREATEENV @nomfamille AS VARCHAR(50) -- évite le "sp_" minuscule.
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Je me plante dès le Drop.
Denis a écrit:
Bonjour,
Je souhaiterais qu'une procédure stockée me crée une table dont le nom lui est passé en paramètre.
Comment faire cela ??
Voici ce que j'ai écrit et qui ne fonctionne pas
CREATE PROCEDURE [sp_CREATEENV] @nomfamille AS VARCHAR(50)
Denis,
Bien que je ne compend pas le besoin/la necessité de créer vos tables
dynamiquement, mais attention au problème de sécurité si vous exposez de
telle stored procedure, exécuter un paramètre passé a une SP avec un SQL
dynamique peut créer des grandes failles de sécurité.
A mon avis c'est pas la propre façon de créer une table dans SQL Server,
vous devez le faire par des scripts d'update ou si tu n'as pas autre choix
que de le faire dynamiquent ou a partir d'un client, l'utilisation de DMO
(SQL2000) ou SMO (SQL2005) est plus appropriée.
"Fred BROUARD" <brouardf@club-internet.fr> wrote in message
news:%23HvTEUz0FHA.2792@tk2msftngp13.phx.gbl...
Il faut utiliser du SQL dynamique
CREATE PROCEDURE P_CREATEENV @nomfamille AS VARCHAR(50)
-- évite le "sp_" minuscule.
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
********************* http://www.datasapiens.com ***********************
Je me plante dès le Drop.
Denis a écrit:
Bonjour,
Je souhaiterais qu'une procédure stockée me crée une table dont le nom
lui est passé en paramètre.
Comment faire cela ??
Voici ce que j'ai écrit et qui ne fonctionne pas
CREATE PROCEDURE [sp_CREATEENV] @nomfamille AS VARCHAR(50)
Denis, Bien que je ne compend pas le besoin/la necessité de créer vos tables dynamiquement, mais attention au problème de sécurité si vous exposez de telle stored procedure, exécuter un paramètre passé a une SP avec un SQL dynamique peut créer des grandes failles de sécurité. A mon avis c'est pas la propre façon de créer une table dans SQL Server, vous devez le faire par des scripts d'update ou si tu n'as pas autre choix que de le faire dynamiquent ou a partir d'un client, l'utilisation de DMO (SQL2000) ou SMO (SQL2005) est plus appropriée.
"Fred BROUARD" wrote in message news:%
Il faut utiliser du SQL dynamique
CREATE PROCEDURE P_CREATEENV @nomfamille AS VARCHAR(50) -- évite le "sp_" minuscule.
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation ********************* http://www.datasapiens.com ***********************
Je me plante dès le Drop.
Denis a écrit:
Bonjour,
Je souhaiterais qu'une procédure stockée me crée une table dont le nom lui est passé en paramètre.
Comment faire cela ??
Voici ce que j'ai écrit et qui ne fonctionne pas
CREATE PROCEDURE [sp_CREATEENV] @nomfamille AS VARCHAR(50)
Denis, Bien que je ne compend pas le besoin/la necessité de créer vos tables dynamiquement, mais attention au problème de sécurité si vous exposez de telle stored procedure, exécuter un paramètre passé a une SP avec un SQL dynamique peut créer des grandes failles de sécurité. A mon avis c'est pas la propre façon de créer une table dans SQL Server, vous devez le faire par des scripts d'update ou si tu n'as pas autre choix que de le faire dynamiquent ou a partir d'un client, l'utilisation de DMO (SQL2000) ou SMO (SQL2005) est plus appropriée.
"Fred BROUARD" wrote in message news:% > Il faut utiliser du SQL dynamique > > CREATE PROCEDURE P_CREATEENV @nomfamille AS VARCHAR(50) > -- évite le "sp_" minuscule. > > AS > > DECLARE @SQL NVARCHAR(4000) > > SET @SQL = 'DROP TABLE ' + @nomfamille + '__EDITIONS' > EXEC (@SQL) > > SET @SQL = 'CREATE TABLE ' + @nomfamille + '__EDITIONS ( .....' > EXEC (@SQL) > > > A + > > -- > Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL > Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com > Audit, conseil, expertise, formation, modélisation, tuning, optimisation > ********************* http://www.datasapiens.com *********************** > > Je me plante dès le Drop. > > Denis a écrit: >> Bonjour, >> >> Je souhaiterais qu'une procédure stockée me crée une table dont le nom >> lui est passé en paramètre. >> >> Comment faire cela ?? >> >> Voici ce que j'ai écrit et qui ne fonctionne pas >> >> CREATE PROCEDURE [sp_CREATEENV] @nomfamille AS VARCHAR(50) >> >> AS >> >> DECLARE @nomTable1 AS VARCHAR(60) >> >> SET @nomTable1 = @nomfamille+"_"+"_EDITIONS" >> >> drop table @nomTable1 >> >> CREATE TABLE @nomTable1 (.......................................... >> >> Je me plante dès le Drop. >> >> >> Une solution ? >> >> Aloha, 2nis > >
Merci à vous pour votre aide
Aloha, 2nis
"Bouarroudj Mohamed" wrote:
Denis,
Bien que je ne compend pas le besoin/la necessité de créer vos tables
dynamiquement, mais attention au problème de sécurité si vous exposez de
telle stored procedure, exécuter un paramètre passé a une SP avec un SQL
dynamique peut créer des grandes failles de sécurité.
A mon avis c'est pas la propre façon de créer une table dans SQL Server,
vous devez le faire par des scripts d'update ou si tu n'as pas autre choix
que de le faire dynamiquent ou a partir d'un client, l'utilisation de DMO
(SQL2000) ou SMO (SQL2005) est plus appropriée.
"Fred BROUARD" <brouardf@club-internet.fr> wrote in message
news:%23HvTEUz0FHA.2792@tk2msftngp13.phx.gbl...
> Il faut utiliser du SQL dynamique
>
> CREATE PROCEDURE P_CREATEENV @nomfamille AS VARCHAR(50)
> -- évite le "sp_" minuscule.
>
> AS
>
> DECLARE @SQL NVARCHAR(4000)
>
> SET @SQL = 'DROP TABLE ' + @nomfamille + '__EDITIONS'
> EXEC (@SQL)
>
> SET @SQL = 'CREATE TABLE ' + @nomfamille + '__EDITIONS ( .....'
> EXEC (@SQL)
>
>
> A +
>
> --
> Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
> Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
> Audit, conseil, expertise, formation, modélisation, tuning, optimisation
> ********************* http://www.datasapiens.com ***********************
>
> Je me plante dès le Drop.
>
> Denis a écrit:
>> Bonjour,
>>
>> Je souhaiterais qu'une procédure stockée me crée une table dont le nom
>> lui est passé en paramètre.
>>
>> Comment faire cela ??
>>
>> Voici ce que j'ai écrit et qui ne fonctionne pas
>>
>> CREATE PROCEDURE [sp_CREATEENV] @nomfamille AS VARCHAR(50)
>>
>> AS
>>
>> DECLARE @nomTable1 AS VARCHAR(60)
>>
>> SET @nomTable1 = @nomfamille+"_"+"_EDITIONS"
>>
>> drop table @nomTable1
>>
>> CREATE TABLE @nomTable1 (..........................................
>>
>> Je me plante dès le Drop.
>>
>>
>> Une solution ?
>>
>> Aloha, 2nis
>
>
Denis, Bien que je ne compend pas le besoin/la necessité de créer vos tables dynamiquement, mais attention au problème de sécurité si vous exposez de telle stored procedure, exécuter un paramètre passé a une SP avec un SQL dynamique peut créer des grandes failles de sécurité. A mon avis c'est pas la propre façon de créer une table dans SQL Server, vous devez le faire par des scripts d'update ou si tu n'as pas autre choix que de le faire dynamiquent ou a partir d'un client, l'utilisation de DMO (SQL2000) ou SMO (SQL2005) est plus appropriée.
"Fred BROUARD" wrote in message news:% > Il faut utiliser du SQL dynamique > > CREATE PROCEDURE P_CREATEENV @nomfamille AS VARCHAR(50) > -- évite le "sp_" minuscule. > > AS > > DECLARE @SQL NVARCHAR(4000) > > SET @SQL = 'DROP TABLE ' + @nomfamille + '__EDITIONS' > EXEC (@SQL) > > SET @SQL = 'CREATE TABLE ' + @nomfamille + '__EDITIONS ( .....' > EXEC (@SQL) > > > A + > > -- > Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL > Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com > Audit, conseil, expertise, formation, modélisation, tuning, optimisation > ********************* http://www.datasapiens.com *********************** > > Je me plante dès le Drop. > > Denis a écrit: >> Bonjour, >> >> Je souhaiterais qu'une procédure stockée me crée une table dont le nom >> lui est passé en paramètre. >> >> Comment faire cela ?? >> >> Voici ce que j'ai écrit et qui ne fonctionne pas >> >> CREATE PROCEDURE [sp_CREATEENV] @nomfamille AS VARCHAR(50) >> >> AS >> >> DECLARE @nomTable1 AS VARCHAR(60) >> >> SET @nomTable1 = @nomfamille+"_"+"_EDITIONS" >> >> drop table @nomTable1 >> >> CREATE TABLE @nomTable1 (.......................................... >> >> Je me plante dès le Drop. >> >> >> Une solution ? >> >> Aloha, 2nis > >