Accueil > > > PROGRAMMER AVEC TRANSACT-SQL : DÉCLARATION DES VARIABLES LOCALES
PROGRAMMER AVEC TRANSACT-SQL : DÉCLARATION DES VARIABLES LOCALES
Information sur la source
Description
Les variables locales sont déclarées au sein d'un lot d'instructions ou d'une procédure avec l'instruction DECLARE, et l'instruction SET ou SELECT leur affecte des valeurs. Les variables de curseur peuvent être déclarées avec cette instruction puis utilisées avec d'autres instructions qui affectent les curseurs. Après la déclaration, toutes les variables sont initialisées à la valeur NULL.
Source
- Syntaxe
- DECLARE
- {
- {@type_de_données variable_locale}
- | {@nom_de_variable_de_curseur CURSOR}
- } [,...n]
-
- Arguments
- @variable_locale
- Nom d'une variable. Les noms de variables doivent commencer par le signe arobase (@). Les noms de variables locales doivent respecter les conventions se rapportant aux identificateurs. Utilisation d'identificateurs.
- type_de_données
- Tout type de données système ou défini par l'utilisateur. Une variable ne doit pas être de type text, ntext ou image. Pour plus d'informations sur les types de données système, voir Types de données. Pour plus d'informations sur les types de données définis par l'utilisateur, voir sp_addtype.
- @nom_de_variable_de_curseur
- Nom d'une variable de curseur. Les noms de variables de curseur doivent commencer par l'arobase (@) et doivent respecter les conventions se rapportant aux identificateurs. Utilisation d'identificateurs.
- CURSOR
- Précise que la variable est une variable de curseur locale.
- n
- Espace réservé indiquant que plusieurs variables peuvent être spécifiées et que des valeurs peuvent leur être affectées.
-
- Exemples
- A. Utilisation de DECLARE
- L'exemple suivant utilise une variable locale @find pour extraire des informations sur tous les auteurs dont le nom commence par « Ring ».
-
- USE pubs
-
- DECLARE @find varchar(30)
-
- SET @find = 'Ring%'
-
- SELECT au_lname, au_fname, phone
-
- FROM authors
-
- WHERE au_lname LIKE @find
Syntaxe
DECLARE
{
{@type_de_données variable_locale}
| {@nom_de_variable_de_curseur CURSOR}
} [,...n]
Arguments
@variable_locale
Nom d'une variable. Les noms de variables doivent commencer par le signe arobase (@). Les noms de variables locales doivent respecter les conventions se rapportant aux identificateurs. Utilisation d'identificateurs.
type_de_données
Tout type de données système ou défini par l'utilisateur. Une variable ne doit pas être de type text, ntext ou image. Pour plus d'informations sur les types de données système, voir Types de données. Pour plus d'informations sur les types de données définis par l'utilisateur, voir sp_addtype.
@nom_de_variable_de_curseur
Nom d'une variable de curseur. Les noms de variables de curseur doivent commencer par l'arobase (@) et doivent respecter les conventions se rapportant aux identificateurs. Utilisation d'identificateurs.
CURSOR
Précise que la variable est une variable de curseur locale.
n
Espace réservé indiquant que plusieurs variables peuvent être spécifiées et que des valeurs peuvent leur être affectées.
Exemples
A. Utilisation de DECLARE
L'exemple suivant utilise une variable locale @find pour extraire des informations sur tous les auteurs dont le nom commence par « Ring ».
USE pubs
DECLARE @find varchar(30)
SET @find = 'Ring%'
SELECT au_lname, au_fname, phone
FROM authors
WHERE au_lname LIKE @find
Conclusion
Notes Les variables locales sont souvent utilisées dans un lot d'instructions ou une procédure comme compteurs pour une boucle WHILE, LOOP ou pour un bloc IF...ELSE.
Les variables ne peuvent être utilisées que dans des expressions et non à la place de noms d'objets ou de mots-clés. Pour créer des instructions dynamiques SQL, utilisez EXECUTE.
La portée d'une variable locale est le lot d'instructions, la procédure stockée ou l'instruction dans lequel elle est déclarée. Pour plus d'informations sur l'utilisation de variables globales dans des blocs d'instructions
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Comment déclarer une variable 2 fois [ par gentlegiant ]
Bonjour,Ça semble assez étrange mais j'ai besoin de savoir s'il est possible de déclarer 2 fois la même variable: DECLARE @ma_variable VARCHAR(10);
declaration et affecation de variable sous mysql5.0 [ par witch17 ]
salutj'ai un ptit probleme qui m'a embeté, enfait on est amener parfois à utiliser des variables pour un simple cacul pour tester j'essaie d'executer
requete sur une table en variable possible ? [ par 24Karas ]
Bonjour, je tente de faire une requete du genre :SET @table:='test_table';SELECT * FROM @table;... mais ça ne marche pas.y-a-t-il un moyen de faire de
concatenation de variable sql [ par bakalai ]
bonjour,Je fais une requête demandant de m'afficher trois variables à la suite provenant de ma table.Les trois variables sont : jour , mois , an (form
Where variable [ par Yxion ]
Bonjour,J'aimerais savoir comment faire un where variable, c'est à dire que lorsque les paramètres de la procédure stockée ne sont pas remplit, les co
Résultat Requete dans variable. [ par sebtralalaetph ]
Bonjour, J'aimerai savoir si il est possible de stocker le résultat d'une requete dynamique dans une variable.Pour le Moment, je passe par une table t
Récupérer ID d'une image dans une variable [ par mathil2 ]
Je souhaite récupérer l'idée de mes différentes images quelques (400) automatiquement juste par rapport à la source de cette image! Et donc je souhait
ouverture d'un formulaire selon deux variables. [ par micou26 ]
salut.J'ai créé un événement qui me permet d'ouvrir un formulaire selon une variable, grace au code suivant DoCmd.openForm. Cela fonctionne très bien.
Mauvais resultat [ par Zachs ]
Hello, j'ai un problème avec une de mes requêtes.DECLARE @idlounge int DECLARE @startdate datetime DECLARE @enddate datetimeSET @idlounge
procedure calcule le AVG [ par midomaroc ]
Bonjours a tous le monde j'essei de créer une procédure stockée qui sert à calculer la moyenne géneral de tous les salaire en utilisant a surseur qui
|
Derniers Blogs
COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL?[WF4] UN BINDING ACTIVITY/ACTIVITYDESIGNER QUI PASSE MAL? par JeremyJeanson
Certain d'entre vous on peut être vécu cette situation embarrassante après quelques temps passer avec WF4 : Au début avec mon " ActivityDesigner" , tout allait bien. Et puis un jour j'ai au des problèmes de " Binding" . Alors nous sommes allé sur le site ...
Cliquez pour lire la suite de l'article par JeremyJeanson MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ?MYTIC - SHAREPOINT 2010 : DéJà UN MYTHE MICROSOFT ? par junarnoalg
La prochaine session de MyTIC aura lieu à Namur, le 23 mars prochain. Pendant presque une heure, nous parlerons de SharePoint 2010. Voici un aperçu du programme.
Accueil : 17h30 Début de la session : 18h00 - Les nouvelles int...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
MYSQLSERVERMYSQLSERVER par favella
Cliquez pour lire la suite par favella
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|