Creation de schéma à partir de variable
Bonjour,
Je viens à vous car j'aimerais savoir s'il est possible de faire un "create" avec une variable?
Je m'explique...
Je dispose d'une base de données que je dois historiser annuellement dans des schémas distinct correspondant aux années. j'ai donc deux bases de données: une courante et une autre annuelle qui varie tous les ans.
Tous les ans je dois créer un nouveau schéma pour les nouvelles données. Cela doit se faire automatiquement à partir d'une procédure stockée. Donc pour cela, je dois faire un CREATE SCHEMA @annee, @annee évoluant avec le temps.
Mon problème est que lorque je parse ma PS il me renvoie l'erreur suivante:
Citation:
Procedure newDatabase, Line 18 Incorrect syntax near the keyword 'SCHEMA'.
et voici le debut de ma procédure:
Code:
1 2 3 4 5 6
| CREATE PROCEDURE newDatabase(@annee datatype OUTPUT)
AS
BEGIN
-- création des schéma de bdd
CREATE SCHEMA [@annee] |
Pour info, j'appelle ma PS à partir de ma Procédure stockée C#; ma variable est initialisée la dedans aussi:
Code:
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
|
DateTime date = DateTime.Today;
int annee = date.Year;
annee = annee+1;
// INSTANCIATION DE CONNEXION
string stringConnexion = "string de ma connexion";
try
{
SqlConnection con = new SqlConnection();
con.ConnectionString = stringConnexion;
// INSTANCIATION DE LA COMMANDE
SqlCommand storedProcedure = new SqlCommand();
//LIAISON DE LA COMMANDE A LA CONNEXION
storedProcedure.Connection = con;
// PROPRIETES DE LA COMMANDE
storedProcedure.CommandType = CommandType.StoredProcedure;
storedProcedure.CommandText = "newDatabase";
storedProcedure.Parameters.AddWithValue("@anneeSchema", annee); |
Est ce que vous auriez une réponse à mon problème?
Merci d'avance