2010-11-12 9 views
1

Je suis un tutoriel here. Il continue à utiliser les caractères '@' devant les choses. Puis-je simplement confirmer ... '@' identifie-t-il les variables dans une requête?MySQL '@': que fait-il?

Merci,

James

Répondre

2

SET est utilisé pour donner une valeur initiale de la variable.

Par exemple:

SET @row := 0; 

SELECT (@row := @row + 1) AS row, name FROM table; 

Si nous ne donnons pas une valeur initiale de la variable, il serait NULL.

+0

Merci - explication parfaite. Bienvenue à Stackoverflow :) – Bojangles

2

Oui, '@' est utilisé comme préfixe pour les variables définies par l'utilisateur. Trouver plus d'informations here

1

Yup. La documentation de MySQL a une section sur user-defined variables. Vous les déclarez généralement avec SET dans MySQL, cependant j'ai vu d'autres types de SQL utiliser DECLARE.

1

Ahh, c'est en fait comment vous déclarez des variables dans mysql. Regardez ici:

http://dev.mysql.com/tech-resources/articles/mysql-storedproc.html

La première chose que nous devons comprendre comment variables utilisateur sont utilisées et valeurs attribuées. Une variable d'utilisateur est distingué par ayant un symbole « @ » en face d'elle, et les valeurs sont affectées utilisant l'instruction SET:

+0

@BoltClock - Je n'apprécie pas les commentaires impolis. Il n'a jamais mentionné dans quel contexte. –

+0

Intrigant - le tutoriel que je suis utilise utilise des trucs comme 'SELECT @myRight: = rgt FROM nested_category'. Est-ce OK à utiliser aussi? – Bojangles

+0

Figuré autant. J'avoue que j'étais plutôt impatient, alors je vais m'excuser. @JamWaffles, vous voudrez peut-être ajouter un exemple d'extrait afin que ce soit plus clair. – BoltClock

Questions connexes