Bonjour à tous,
Je débute en SGBD et je suis confronté à un problème qui me bloque. En effet je n’arrive pas à passer le nom de la table en variable lors de requête SQL.
Exemple 1
declare @nom_table varchar(255)
declare @valeur1 int
set @nom_table varchar = 'test'
insert @nom_table varchar (colonne1) values (@valeur1)
Ms SQL m’indique que @nom_table n’est pas déclaré
Exemple 2
1 2 3 4
| declare @nom_table varchar(255)
declare @valeur1 int
set @nom_table varchar = 'test'
exec('Insert '+@nom_table varchar+'(colonne1) values ('+@valeur1+')') |
cette fois c’est @valeur1 qui n’est pas déclaré. La commande exec fonctionne lorsque j’utilise une chaîne de caractère plus une variable, exemple :
exec('drop table '+@nom_table)
Voila où j’en suis dans mon investigation, si vous avez des idées, des remarques n’hésitez pas à en faire part.
Merci d’avance
Nicolas
Partager