issue:
i have an ASP-Application running fine with both SQL Server 2000 and SQL 2005 (both 32 bit)
Now i have to attach a 64bit SQL-Server.
I have a problem with the connection:
This one runs fine with sql 2005 32bit
<%set myConn = Server.CreateObject("ADODB.Connection")
myConn.open "driver={SQL Native Client};server=<servername>;database=<dbname>;uid=<uid>;pwd=<pwd>" %>
but not with the 64-bit server:
ADODB.COnnection error "800a0ea9". Provider is not specified and there is no standard provider.
ok, i did some research and came up with the following:
<%set myConn = Server.CreateObject("ADODB.Connection")
myConn.open "PROVIDER=SQLOLEDB;DATA SOURCE=<serverip>,<serverport>;database=<dbname>;uid=<uid>;pwd=<pwd>" %>
thats fine, now i get a connect.
Unfortunately, this provider seems to behave different to the one i use in 32bit :
Lets say i have a stored procedure"
create spName as
select * from mytable
when i execute the following
<%sqlstr = "exec spname"
set myRecSet = CreateObject("ADODB.Recordset")
myRecSet.open SQLStr, myConn
response.write(myRecSet(0)) %>
it gives the first value of the first row with the Connection to a 32bit SQL-Server
but myRecSet seems to be empty on my 64bit SQL Server the response.write leads to an error message.
As far as i understand this, the provider used when connecting to a 32bit Server returns the records selected by the last row of the stored procedure into the recordset, but the provider when connecting to a 64bit server does not return these results.
What can i do, if i dont want to rewrite my asp-programming. I hope somebody has the correct naming / syntax for an connection string which allows me to connect my asp-application to the 64bit SQLServer which behaves like the "old" one for 32bit.
I hope my comments are clear enough - english is obviously not my mother-tongue - and somebody can give me a hint.
Thanks,
Heinrich
What is the error message?
No comments:
Post a Comment