[Zope] Re: Is there any Microsoft SQL Server native driver for Zope?

Dieter Maurer dieter@handshake.de
Thu, 7 Mar 2002 20:49:34 +0100


Tille, Andreas writes:
 > Once I tried this way and I was able to connect to MS-SQL server by
 > using the FreeTDS tools.  SO I was able to verify that FreeTDS works.
 > 
 > Unfortunately I do not understand the (currently quite sparse)
 > documentation of the SQLRelay configuration file for accessing MS SQL
 > server.  I did not found any hint how to specify the database on the
 > MS-SQL server I want have access to.
 > 
 > If someone could provide a working example (perhaps in private mail)
 > I would be very happy.

SQLRelay config file
	<?xml version="1.0"?>
	<instances>
	  <instance id="ID" port="PORT" unixport="" dbase="freetds" connections="4" maxconnections="8" maxqueuelength="4" growby="" ttl="60" endofsession="rollback" sessiontimeout="" socket="" runasuser="" runasgroup="" cursors="" authtier="connection">
	    <users>
	      <user user="SQLRELAY-USER" password="SQLRELAY-PASSWORD"/>
	    </users>
	    <connections>
	      <connection connectionid="CONNECTION-ID" string="user=MS-SQL-USER;password=HIS-PASSWORD;server=FREETDS-SERVER-NAME" metric="1"/>
	    </connections>
	  </instance>
	</instances>

Corresponding freetds config file:
	....
	[FREETDS-SERVER-NAME]
		host = MS-SQL-SERVER-NAME-OR-IP
		port = 1433
		tds version = 7.0

Watch out for ALL UPPERCASE names above. You need to adapt them (consistently)
to your needs. When you use an older MS SQL server, your "tds version"
should be "4.2" rather than "7.0".

You will start SQLRelay with "sqlr-start id=ID" ("ID" what you defined above).

You will connect to SQLRelay with the "SQLRELAY-USER" and
"SQLRELAY-PASSWORD" above. SQLRelay in turn will connect to
your SQL server with the "MS-SQL-USER" and "HIS-PASSWORD" above.

There are more options for the connection string than shown above,
e.g. to control language and charset. They are documented
in the configuration section of the SQLRelay documentation.
Documentation is terse but complete...


Dieter