日期:2014-05-17  浏览次数:21069 次

请问语句里&和+的区别
Set   Rs   =   DBConn.Execute( "SELECT   UserID,   Password,   UserName,   LoginID,   EnterpriseID,   EmployeeID,   FolderName,   Email   FROM   HR_UserInfo   WHERE   EnterpriseID= ' "   &   s_EnterpriseID   &   " '   AND   LoginID= ' "   +   loginID   +   " ' ")

------解决方案--------------------
这里没区别
------解决方案--------------------
&和+在处理字符串时都是表示强制连接两个字符串

语言是vbscript的时候用&
语言是jscript的时候用+


------解决方案--------------------
虽然也可以使用 + 运算符连接两个字符串,但是您仍应使用 & 运算符进行字符串的连接以避免混淆,提供易理解的代码。

这是因为在使用 + 运算符时,有可能无法确定是做加法还是做字符串连接。

这是vbs手册里的原文
------解决方案--------------------
举个例子给你你就明白了:
使用&时,参与连接的两个表达试可以不全是字符串,&可以把两个表达试全部转化成字符型
<%
num=23
strnum= "sdfdfd "&num
%>
这样strnum被赋予了字符串 "sdfdfd23 "
然而如果使用+
必须如下
<%
num= "23 "
strnum= "sdfdfd "+num
%>
看到有什么区别了吧?
另外如果你的程序不能运行的话,我感觉你的 EnterpriseID= ' " & s_EnterpriseID & " ' AND LoginID= ' " + loginID + " ' ")这句程序有点问题,EnterpriseID或者LoginID应该有一个是自动编号类型的啊,自动编号类型的不用 ' '