WilliamRen / django-pyodbc

Automatically exported from code.google.com/p/django-pyodbc
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Sybase support #54

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Are there any plans to add support for Sybase? I have access to both Sybase
and Sybase IQ and would love to work with someone to add the functionality.
Don't imagine it being too difficult (or is it?) Please email me at
python6009 at gmail if interested. Thanks. 

Original issue reported on code.google.com by python6...@gmail.com on 4 Jun 2009 at 11:50

GoogleCodeExporter commented 8 years ago
Out of curiosity, have you already tried the backend already against these 
Sybase RDBMS?.

I know Sybase is the creator of the TDS protocol and has advanced it since it
sold/licenced  the technology to MS but I don't know to what level does FreeTDS
support their TDS 'flavour', remember that django-pyodbc sits above a stack 
composed
by pyodbc + unixodbc (or another ODBC driver manager like iodbc) + FreeTDS ODBC
driver + FreeTDS TDS component. So we depend on these pieces working.

You may also be interested in this django-developers thread form a couple of 
months ago:

http://groups.google.com/group/django-developers/browse_thread/thread/9ed0cb5575
c2584b

It shows there are Sybase employees working on a Django backend for Sybase SQL
Anywhere. I don't know what (if any) relationship there is between SQL Anywhere 
and
the products you mention though.

Original comment by cra...@gmail.com on 5 Jun 2009 at 10:50

GoogleCodeExporter commented 8 years ago
Has there been any demand for getting sybase ASE support?  Would be very 
interested to get it working.  I do not have much time but would be keen to try 
and work on this.  

Thanks

Original comment by naveed.r...@gmail.com on 30 Dec 2011 at 12:42

GoogleCodeExporter commented 8 years ago
I also would like to see Sybase ASE support in django-pyodbc.

I am making some experiments here with Sybase (ASE 12.5), and I was able to 
connect to the database after changing django-pyodbc/sql_server/base.py to 
append the driver configuration despite the DSN is set (but the default 
behavior is to set the driver only if no DSN is set, but then pyodbc fails to 
connect without a driver, I don't really know why).

But it seems that there are some things that are specific to SQL Server.
First thing is the semicolon, that Sybase doesn't support (at least the version 
we use at ACME), and soon after connecting I got an error because of this line:

cursor.execute("SET DATEFORMAT ymd; SET DATEFIRST %s" % self.datefirst)

I changed to:

cursor.execute("SET DATEFORMAT ymd"
cursor.execute("SET DATEFIRST %s" % self.datefirst)

but soon after that I go other errors from the code that tries to get the SQL 
Server version... I commented it out, and then the next thing was some other 
thing in introspection.py to get the list of tables...

Now, I am thinking I'm not doing this the right way.
What would be the best way to provide Sybase specific commands for these sort 
of things?
Create a copy of the sql_server directory named sybase, try to import 
everything and override whenever is needed?

Original comment by eliasdor...@gmail.com on 27 Apr 2012 at 5:25