#5246: MS SQL Server backend using pyodbc.
----------------------------------------------------------+-----------------
Reporter:  Filip Wasilewski <[EMAIL PROTECTED]>  |       Owner:  adrian         
              
  Status:  new                                            |   Component:  
Database wrapper             
 Version:  SVN                                            |    Keywords:  mssql 
pyodbc database backend
   Stage:  Unreviewed                                     |   Has_patch:  1     
                       
----------------------------------------------------------+-----------------
 Note: The code is partially based on the #5062 ticket with several fixes,
 modifications
 and improvements applied.
 
 == Main features: ==
  - Uses pyodbc (http://pyodbc.sourceforge.net) as the database driver.
 This seems to be the most mature
    SQL Server driver for Python and __is still maintained__, which is a
 __big__
    plus compared to other SQL Server drivers like adodbapi and pymssql.
    Pyodbc is also used by SQLAlchemy for SQL Server connections.
  - Native Unicode support. Every string that goes in is stored as Unicode,
    and every string that goes out of the database is returned as Unicode.
    No conversion to/from intermediate encodings takes place, so things
 like
    `max_length` in `CharFiled` works just like expected.
  - Limit/offset supported in SQL Server 2005 and SQL Server 2000. Yay!
  - Both Windows Authentication (Integrated Security) and SQL Server
    Authentication supported.
  - Passes most of the model test cases. The tests that don't work out of
   the box are:
    - empty: Corner-case. As far as I know SQL Server 2005 does not support
 that.
      There seems to be little use of it at all.
    - lookup: Regular expressions are not supported out of the box. Only
 simple
      wildcard matching with %, _ and [] character classes.
    - serializers: Forward references cause foreign key constraint
 violation.
  - Tested with SQL Server 2005 Express SP2 and SQL Server 2000 SP4, Python
 2.5
    and Windows XP.
 
 == Open issues: ==
  - SQL Server collation support. I have added a collation parameter to the
    `Field` constructor to see how this will work.
  - Is case sensitive/insensitive comparison using explicit collations
    a sensible thing?
  - Introspection not tested yet.
  - Support for ODBC specific configuration -- see module doc in base.py
 for
    DATABASE_SETTINGS options.
  - SQL Server 2005 specific: `nvarchar(max)` instead of `ntext` is used
    for storing `TextField` data. This allows for exact matching
    (`__exact`, `=`) on this field type. (Unicode text parameters are
    passed to the SQL Server as `nvarchars`, but the comparison of
    `nvarchar` with `ntext` is not supported.)
    [[BR]]
    Note: `nvarchar(max)` type is not supported on previous SQL Server
    versions and some additional magic may be required. For now the
    exact matching on `TextFields` will not work in older versions.
 
 Almost there...

-- 
Ticket URL: <http://code.djangoproject.com/ticket/5246>
Django Code <http://code.djangoproject.com/>
The web framework for perfectionists with deadlines
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to django-updates@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to