6.5 -> 7.0 made webserver loose contact

6.5 -> 7.0 made webserver loose contact

Post by Nicla » Thu, 02 Dec 1999 04:00:00



Hi,

a customer of mine has a SQL server 6.5 and an intranet webserver (both on
the same physical machine). They are placed behind a firewall (Firewall One
I think). On the outside of the firewall is the extranet webserver. These
two systems has worked flawlessly over 1 year.

Now the customer wanted to upgrade to 7.0 and so I did. the upgrade went
just fine and the performace was stunning. But, after the upgrade, the
extranet webserver on the outside reports a silly error 3704 that it didn't
report before the upgrade.

What I do to get this error? I use an ODBC-connection, with an "on error":
-----------------
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionTimeout = 5

on error resume next
objConn.Open "ODBCname", "username", ""
-----------------------

Next thing is to open the resultset, which I do using an Execute on the
Command:
-----------------------
SQL = "SELECT bruker_id,passord,brukertype,gruppe FROM Bruker WHERE
bruker_id = " & "'" & UserID & "'"

Set rs = objConn.Execute(SQL)
---------------

and then I have the Err-part:
---------------
If Err.Number > 0 Then
 '
 '
 '
End If
----------------
Use of this results in Error 3704 'The operation requested by the
application is not allowed if the object is closed'.

According to the knowledgebase at microsoft.com, it's when using #TEMP
stored procedures that this occurs. First of all, I'm not using a stored
procedure, but an ordinary SELECT. Ok, so maybe SQL Server does a temporary
stored procedure out of it. But how come it has all worked before!? Well,
once again, according to the knowledgebase, this is a new "feature" of the
ADO2.1 (SP1, SP2). I was running ADO 1.5 before so I didn't have this
"feature" (which is a problem for me, not a feature.

Then the knowledgebase suggests I should use
----------
rs.Open "SET NOCOUNT ON"
----------
before I actually open the resultset. This is a must to solve the "feature"
they say. Ok, so I remove the line
-----------
Set rs = objConn.Execute(SQL)
-----------
from my code and replace it with
-----------
Set rs = Server.CreateObject("ADODB.Recordset")
rs.ActiveConnection = objConn
rs.Open "SET NOCOUNT ON"

rs.Open SQL
------------

Now, this doesn't work either! Instead of a 3704-error, I suddenly get a
3709 "The application requested an operation on an object with a reference
to a closed or invalid Connection object."

What's wrong with the ADO?! Or is it the firewall of mine that suddenly has
bailed out!? It doesn't seem so, because I then removed the old DSN-name
from the extranet webserver and made a new one with the same name. It can
communicate with the database on the inside of the firewall.

NOW comes the weird part! The ASP-pages works all fine if I'm sitting at the
extranet webserver executing them! But if I'm on the inside of the firewall,
trying to reach the same server (using the full URL) I get the 3704 or 3709
errors. Ok I thought, this is a firewall error. So I went home and tried it
from home. Nope, I get the same errors from home.

So how come it all works when sitting physically at the extranet webserver,
but not when accessing the ASP-pages from another machine, on the extranet
webserver?!

This is really annoying problem I have and I'd appreciate any inputs,
comments etc. that can help me out!

BEst regards

PS. I'm using Named Pipes, not TCP/IP port 1433.

 
 
 

1. Making a MS-SQL 6.5 compatible database with MS-SQL 7.0

Im working on a database using MS-SQL 7.0. However, the machine
that should finally host the database runs MS-SQL 6.5.

All I need is to create some scripts that I could use to recreate the
database in the 6.5 Server. I have already created the scripts and
succesfully recreated the database in another ms-sql 7.0 server, but
when runed them in ms sql 6.5 did not work.
The database was originally made in MS Access and upgraded to SQL 7.0
It includes some autonumeric fields and some rules enforce data
integrity between tables.

How can I recreate this ms-sql 7.0 database on a ms-sql 6.5 server?

Thanks in advance

camilo

Sent via Deja.com http://www.deja.com/
Before you buy.

2. cisam utilities

3. SQL Customer Contact data => Outlook Contact

4. speed of server side languages

5. 6.5 to 7.0 Upgrade: 7.0 doesn't contail all objects from 6.5

6. Pop-up Picklist in dBASE IV (long!)

7. Conversion from 6.5 to 7.0 - thinks 6.5 is 7.0

8. 2nd CfP: DYNAMICS'98 Workshop on Transactions and Change in Logic Databases

9. Linked Server: 7.0 <-> 6.5

10. SQL 6.5 -> 7.0

11. Konvertierung Datensicherung 6.5 -> 7.0

12. replication 7.0 -> 6.5

13. Upgrade 6.5 -> 7.0