Author: phd
Date: Thu Feb 3 07:40:33 2011
New Revision: 4331
Log:
In SQLite, id columns are made AUTOINCREMENT.
Modified:
SQLObject/trunk/docs/News.txt
SQLObject/trunk/sqlobject/sqlite/sqliteconnection.py
Modified: SQLObject/trunk/docs/News.txt
==============================================================================
--- SQLObject/trunk/docs/News.txt Wed Jan 26 08:19:31 2011 (r4330)
+++ SQLObject/trunk/docs/News.txt Thu Feb 3 07:40:33 2011 (r4331)
@@ -13,6 +13,8 @@
Features & Interface
--------------------
+* In SQLite, id columns are made AUTOINCREMENT.
+
* Parameter ``backend`` in DB URI is no longer supported, use parameter
``driver``.
Modified: SQLObject/trunk/sqlobject/sqlite/sqliteconnection.py
==============================================================================
--- SQLObject/trunk/sqlobject/sqlite/sqliteconnection.py Wed Jan 26 08:19:31 2011 (r4330)
+++ SQLObject/trunk/sqlobject/sqlite/sqliteconnection.py Thu Feb 3 07:40:33 2011 (r4331)
@@ -252,8 +252,9 @@
return self._createIDColumn(soClass.sqlmeta)
def _createIDColumn(self, sqlmeta):
- key_type = {int: "INTEGER", str: "TEXT"}[sqlmeta.idType]
- return '%s %s PRIMARY KEY' % (sqlmeta.idName, key_type)
+ if sqlmeta.idType == str:
+ return '%s TEXT PRIMARY KEY' % sqlmeta.idName
+ return '%s INTEGER PRIMARY KEY AUTOINCREMENT' % sqlmeta.idName
def joinSQLType(self, join):
return 'INT NOT NULL'
|