Mercurial > p > mysql-python > mysqldb-2
comparison MySQLdb/converters.py @ 35:e7bd07afbcb9 MySQLdb
Conflict-filled merge from 1.2br for 558:559 set and exception fixes
author | kylev |
---|---|
date | Thu, 12 Feb 2009 00:23:41 +0000 |
parents | a275593a1630 |
children | f4fd8c20511c |
comparison
equal
deleted
inserted
replaced
34:7b67220c5109 | 35:e7bd07afbcb9 |
---|---|
34 | 34 |
35 """ | 35 """ |
36 | 36 |
37 from _mysql import string_literal, escape_sequence, escape_dict, NULL | 37 from _mysql import string_literal, escape_sequence, escape_dict, NULL |
38 from MySQLdb.constants import FIELD_TYPE, FLAG | 38 from MySQLdb.constants import FIELD_TYPE, FLAG |
39 from sets import Set | |
40 from MySQLdb.times import datetime_to_sql, timedelta_to_sql, \ | 39 from MySQLdb.times import datetime_to_sql, timedelta_to_sql, \ |
41 timedelta_or_None, datetime_or_None, date_or_None, \ | 40 timedelta_or_None, datetime_or_None, date_or_None, \ |
42 mysql_timestamp_converter | 41 mysql_timestamp_converter |
43 from types import InstanceType | 42 from types import InstanceType |
44 import array | 43 import array |
45 import datetime | 44 import datetime |
45 | |
46 try: | |
47 set | |
48 except NameError: | |
49 from sets import Set as set | |
46 | 50 |
47 __revision__ = "$Revision$"[11:-2] | 51 __revision__ = "$Revision$"[11:-2] |
48 __author__ = "$Author$"[9:-2] | 52 __author__ = "$Author$"[9:-2] |
49 | 53 |
50 def bool_to_sql(boolean, conv): | 54 def bool_to_sql(boolean, conv): |
51 """Convert a Python bool to an SQL literal.""" | 55 """Convert a Python bool to an SQL literal.""" |
52 return str(int(boolean)) | 56 return str(int(boolean)) |
53 | 57 |
54 def SET_to_Set(value): | 58 def SET_to_Set(value): |
55 """Convert MySQL SET column to Python Set.""" | 59 """Convert MySQL SET column to Python set.""" |
56 return Set([ i for i in value.split(',') if i ]) | 60 return set([ i for i in value.split(',') if i ]) |
57 | 61 |
58 def Set_to_sql(set, conv): | 62 def Set_to_sql(value, conv): |
59 """Convert a Python Set to an SQL literal.""" | 63 """Convert a Python xet to an SQL literal.""" |
60 return string_literal(','.join(set), conv) | 64 return string_literal(','.join(value), conv) |
61 | 65 |
62 def object_to_sql(obj, conv): | 66 def object_to_sql(obj, conv): |
63 """Convert something into a string via str().""" | 67 """Convert something into a string via str().""" |
64 return str(obj) | 68 return str(obj) |
65 | 69 |
66 def unicode_to_sql(value, conv): | 70 def unicode_to_sql(value, conv): |
120 unicode: unicode_to_sql, | 124 unicode: unicode_to_sql, |
121 object: instance_to_sql, | 125 object: instance_to_sql, |
122 bool: bool_to_sql, | 126 bool: bool_to_sql, |
123 datetime.datetime: datetime_to_sql, | 127 datetime.datetime: datetime_to_sql, |
124 datetime.timedelta: timedelta_to_sql, | 128 datetime.timedelta: timedelta_to_sql, |
125 Set: Set_to_sql, | 129 set: Set_to_sql, |
126 str: object_to_quoted_sql, # default | 130 str: object_to_quoted_sql, # default |
127 | 131 |
128 FIELD_TYPE.TINY: int, | 132 FIELD_TYPE.TINY: int, |
129 FIELD_TYPE.SHORT: int, | 133 FIELD_TYPE.SHORT: int, |
130 FIELD_TYPE.LONG: long, | 134 FIELD_TYPE.LONG: long, |
131 FIELD_TYPE.FLOAT: float, | 135 FIELD_TYPE.FLOAT: float, |
132 FIELD_TYPE.DOUBLE: float, | 136 FIELD_TYPE.DOUBLE: float, |