出自安全考虑,为了保护自己的在程序中的连接数据库的密码,我把自己的网站把数据库连接方式从OLEDB方式改成了FILEDSN方式
但是出现了这个错误:
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e5d'
[Microsoft][ODBC SQL Server Driver]无效的属性/选项标识符
/list.asp,行 187
[Microsoft][ODBC SQL Server Driver]无效的属性/选项标识符
/list.asp,行 187
上网查了老半天,没有找到一个有用的可以解决的信息:
在IBM网站上查询到(http://www-01.ibm.com/support/docview.wss?uid=swg1IY87845)
说是因为FILEDSN方式连接,不支持连接到DB2数据库使用存储过程时候的 NamedParameters = True 这个属性。
不过我用的是VBScript,连接的数据库是MSSQL2008。
MSDN网站上找到的信息也是说因为连接到DB2数据库不支持这个属性 。
可是我在改成FILEDSN连接方式之前,程序都一切正常。为什么改了之后就会报错呢?
后来我查看了一下存储过程的参数,把第一个return参数屏蔽后,页面正常了!
原来出错的部分在于调用存储过程时候的语句获取RETURN的部分出错了
comm.Parameters.Append(comm.CreateParameter("RETURN",2,4))
于是我试着在前面加了一个@变成
comm.Parameters.Append(comm.CreateParameter("@RETURN",2,4))
刷新之后,页面正常。错误没有了!
希望有遇到类似错误的人一个思路~