变量声明的问题

yy2001 2003-10-16 10:36:52
请问
DECLARE @@TOTALCOST money

DECLARE @TOTALCOST money
的区别
...全文
31 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yy2001 2003-10-21
  • 打赏
  • 举报
回复
请问大力,是否这两个声明就是变量名不同,其他没有区别呢?
pengdali 2003-10-20
  • 打赏
  • 举报
回复
declare @@a
它的变量名是 @@a
yy2001 2003-10-19
  • 打赏
  • 举报
回复
declare @@a
它的变量名是不是这个 ‘@a’???
gmlxf 2003-10-18
  • 打赏
  • 举报
回复
@ 局部变量
@@ 全局变量
ximxin 2003-10-18
  • 打赏
  • 举报
回复

declare @@a
它的变量名是不是这个 ‘@a’
lansquenet 2003-10-17
  • 打赏
  • 举报
回复
@是局部的变量,当存储过程执行完后它会自动的释放的
@@是全局变量,即使你的存储过程执行完后,它仍然存在,需要手动干掉

所以一般尽量少用或者不要@@开头的变量,用多了会影响性能的,但系统一些基本的@@变量还是要弄懂的
zjcxc 元老 2003-10-17
  • 打赏
  • 举报
回复
一样的,定义了两个变量@@a及@a
declare @@a
declare @a


用户不可能定义全局变量 .
yy2001 2003-10-17
  • 打赏
  • 举报
回复
lansquenet(佣兵小队长.NET):
不是吧,书上说:用户不能建立全局变量的。



我看SQL SERVER 的联机帮助中建立存储过程的例子中有:
declare @@a
这样的声明,不知道与
declare @a
这样的有什么区别?




nadylu 2003-10-16
  • 打赏
  • 举报
回复
1,一个 @ 是指局部变量,是用户定义的变量,其使用范围是定义批处理、存储过程和触发器。
2。两个 @@ 是指全局变量,是SQLServer系统担供并赋值的变量。注意:用户不能建立全局变量,也不用用set语句修改全局变量的值。
zarge 2003-10-16
  • 打赏
  • 举报
回复
只是名称不同,用起来没什么区别,
不过某些 Transact-SQL 函数的名称以双 at 符号 (@@) 开始。
为避免混淆这些函数,建议不要使用以 @@ 开始的名称。

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧