Changeset 5953
- Timestamp:
- 08/19/07 17:55:05 (1 year ago)
- Files:
-
- django/trunk/django/db/backends/ado_mssql/base.py (modified) (1 diff)
- django/trunk/django/db/backends/dummy/base.py (modified) (1 diff)
- django/trunk/django/db/backends/__init__.py (modified) (1 diff)
- django/trunk/django/db/backends/mysql/base.py (modified) (1 diff)
- django/trunk/django/db/backends/mysql_old/base.py (modified) (1 diff)
- django/trunk/django/db/backends/oracle/base.py (modified) (2 diffs)
- django/trunk/django/db/backends/postgresql/base.py (modified) (1 diff)
- django/trunk/django/db/backends/postgresql_psycopg2/base.py (modified) (1 diff)
- django/trunk/django/db/backends/sqlite3/base.py (modified) (1 diff)
- django/trunk/django/db/models/query.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/db/backends/ado_mssql/base.py
r5952 r5953 98 98 return cursor.fetchone()[0] 99 99 100 def get_datetime_cast_sql():101 return None102 103 100 def get_limit_offset_sql(limit, offset=None): 104 101 # TODO: This is a guess. Make sure this is correct. django/trunk/django/db/backends/dummy/base.py
r5952 r5953 45 45 dictfetchall = complain 46 46 get_last_insert_id = complain 47 get_datetime_cast_sql = complain48 47 get_limit_offset_sql = complain 49 48 get_random_function_sql = complain django/trunk/django/db/backends/__init__.py
r5952 r5953 69 69 """ 70 70 raise NotImplementedError() 71 72 def datetime_cast_sql(self): 73 """ 74 Returns the SQL necessary to cast a datetime value so that it will be 75 retrieved as a Python datetime object instead of a string. 76 """ 77 return None django/trunk/django/db/backends/mysql/base.py
r5952 r5953 153 153 return cursor.lastrowid 154 154 155 def get_datetime_cast_sql():156 return None157 158 155 def get_limit_offset_sql(limit, offset=None): 159 156 sql = "LIMIT " django/trunk/django/db/backends/mysql_old/base.py
r5952 r5953 172 172 return cursor.lastrowid 173 173 174 def get_datetime_cast_sql():175 return None176 177 174 def get_limit_offset_sql(limit, offset=None): 178 175 sql = "LIMIT " django/trunk/django/db/backends/oracle/base.py
r5952 r5953 52 52 return sql 53 53 54 def datetime_cast_sql(self): 55 return "TO_TIMESTAMP(%s, 'YYYY-MM-DD HH24:MI:SS.FF')" 56 54 57 class DatabaseWrapper(BaseDatabaseWrapper): 55 58 ops = DatabaseOperations() … … 166 169 cursor.execute('SELECT %s_sq.currval FROM dual' % sq_name) 167 170 return cursor.fetchone()[0] 168 169 def get_datetime_cast_sql():170 return "TO_TIMESTAMP(%s, 'YYYY-MM-DD HH24:MI:SS.FF')"171 171 172 172 def get_field_cast_sql(db_type): django/trunk/django/db/backends/postgresql/base.py
r5952 r5953 128 128 cursor.execute("SELECT CURRVAL('\"%s_%s_seq\"')" % (table_name, pk_name)) 129 129 return cursor.fetchone()[0] 130 131 def get_datetime_cast_sql():132 return None133 130 134 131 def get_limit_offset_sql(limit, offset=None): django/trunk/django/db/backends/postgresql_psycopg2/base.py
r5952 r5953 82 82 cursor.execute("SELECT CURRVAL('\"%s_%s_seq\"')" % (table_name, pk_name)) 83 83 return cursor.fetchone()[0] 84 85 def get_datetime_cast_sql():86 return None87 84 88 85 def get_limit_offset_sql(limit, offset=None): django/trunk/django/db/backends/sqlite3/base.py
r5952 r5953 115 115 return None 116 116 return str(getattr(dt, lookup_type)) 117 118 def get_datetime_cast_sql():119 return None120 117 121 118 def get_limit_offset_sql(limit, offset=None): django/trunk/django/db/models/query.py
r5952 r5953 781 781 table_prefix = backend.quote_name(table_prefix[:-1])+'.' 782 782 field_name = backend.quote_name(field_name) 783 if type(value) == datetime.datetime and backend.get_datetime_cast_sql():784 cast_sql = backend.get_datetime_cast_sql()783 if type(value) == datetime.datetime and connection.ops.datetime_cast_sql(): 784 cast_sql = connection.ops.datetime_cast_sql() 785 785 else: 786 786 cast_sql = '%s' … … 795 795 format = '%s %s' 796 796 try: 797 return format % (field_sql, 798 backend.OPERATOR_MAPPING[lookup_type] % cast_sql) 797 return format % (field_sql, backend.OPERATOR_MAPPING[lookup_type] % cast_sql) 799 798 except KeyError: 800 799 pass
