由于我一直在做其他的存储过程,很少在ms的平台上面使用,所以不太明白
说是语法问题,这太没有说服力了,肯定有它用这个符号的原因
试想其他的(db2,oracle)都不是这么做的吧,难道微软就想弄点独到的
想请教高人,这个有他的内在原因吗,是为了区别于其他还是便于区集成到其他程序中的方便(如C#),
请达人说说,不胜感激!!!

解决方案 »

  1.   

    个人感觉加个@是把变量和字段等加以区分的
    比如声明变量:@user_id  一看就知道是一个叫user_id的变量,如果不用@的话,表中存在user_id字段,当用sql语句时不容易区分,你所要的是变量user_id还是字段user_id.其实@是一个识别符号,比如区域的变量名称都必须以:@开头
                             全域的系统变量是以:@@开头
      

  2.   

    声明变量的符号
    1.好看,符合微软的审美观
    2.asaii码
    3.开发者喜好
      

  3.   

    declare @i int
    declare @s varchar(10)
      

  4.   

    这跟为什么在C语言中用""表示字符串而在Pascal中用''没什么差别吧.