VBA基础
浅谈Access中"&"和"+"连接运算符的异同
2013-09-05 14:36:35

“&”“+”都是连接符,都有连接的功能,如:“123”+“456” 的结果是都字符串“123456” 但是“&”连接符连接两边的数据时,如果有一边不是字符串,“&”连接符会先将非字符串转化为字符型,再作连接,如123&"abc" 结果即为“123abc”。但“+”连接符会报错 但是正好相反的是,“+”能作运算符的作用。“12”+13  “+”运算符会把字符串中的数字转化为数值型,再进行算术加法运算,即结果为25,而“&” 运算符即为“1213”  

值得注意的是:使用运算符“&”时,变量与运算符“&”之间应加一个空格。这是因为符号“&”还是长整型的类型定义符,如果变量与符号“&”接在一起,系统先把它作为类型定义符处理,因而就会出现语法错误。

所以:连字符在执行字符串连接时是首选的运算符。在除加法以外的其他情况下应尽量避免使用加法运算符,除非特地需要在表达式中产生 Nulls 值。 扩展阅读: roych浅谈“&”与“+”的异同: http://www.office-cn.net/forum.php?mod=viewthread&tid=116560