#30511: AutoField with postgres10/11 as generated identity
-------------------------------------+-------------------------------------
               Reporter:  Michael    |          Owner:  nobody
  Kany                               |
                   Type:  New        |         Status:  new
  feature                            |
              Component:  Database   |        Version:  2.2
  layer (models, ORM)                |       Keywords:  postgres generated
               Severity:  Normal     |  identity
           Triage Stage:             |      Has patch:  0
  Unreviewed                         |
    Needs documentation:  0          |    Needs tests:  0
Patch needs improvement:  0          |  Easy pickings:  0
                  UI/UX:  0          |
-------------------------------------+-------------------------------------
 We are currently working on a Django / Postgresql 11 project. We needed an
 adjustment for the postgres module because of its compatibility with .NET
 Framework and dataset generation.
 In postgres 10/11 there is the new feature identity column called
 GENERATED AS IDENTITY instead of serial.
 column_name type GENERATED {ALWAYS | BY DEFAULT} AS IDENTITY
 [(sequence_option)]
 We have created a module based on db.backends.postgres that adds 2 new
 django model fields. I would like implement the new feature into pyodbc
 module or new module for postgres 10/11 useful for later versions of
 django.

 Adjustments only in base.py (line 70ff):
 data_types = {
         'IdentityAutoField': 'integer',
         'IdentityBigAutoField': 'bigint',

 and schema.py, def column_sql () (line 178ff):
 # Primary key / unique outputs
         if field.primary_key:
             sql + = "PRIMARY KEY"
             if field.get_internal_type () in ("IdentityAutoField",
 "IdentityBigAutoField"):
                 sql + = "GENERATED ALWAYS AS IDENTITY"
         elif field.unique:
             sql + = "UNIQUE"

 I can also send our code

 best regards
 Michael Kany

-- 
Ticket URL: <https://code.djangoproject.com/ticket/30511>
Django <https://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 unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/053.85058bd127809d3e64647858831c7797%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to