git://git.onelab.eu
/
sfa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix bug in update method
[sfa.git]
/
sfa
/
util
/
genitable.py
diff --git
a/sfa/util/genitable.py
b/sfa/util/genitable.py
index
f373ecb
..
4ad582b
100644
(file)
--- a/
sfa/util/genitable.py
+++ b/
sfa/util/genitable.py
@@
-74,7
+74,7
@@
class GeniTable:
def insert(self, record):
dont_insert = ['date_created', 'last_updated']
fields = [field for field in record.fields.keys() if field not in dont_insert]
def insert(self, record):
dont_insert = ['date_created', 'last_updated']
fields = [field for field in record.fields.keys() if field not in dont_insert]
- fieldnames = ["key"] + fields
+ fieldnames = ["key"
, "pointer"
] + fields
fieldvals = record.get_field_value_strings(fieldnames)
query_str = "INSERT INTO " + self.tablename + \
"(" + ",".join(fieldnames) + ") " + \
fieldvals = record.get_field_value_strings(fieldnames)
query_str = "INSERT INTO " + self.tablename + \
"(" + ",".join(fieldnames) + ") " + \
@@
-83,11
+83,13
@@
class GeniTable:
self.cnx.query(query_str)
def update(self, record):
self.cnx.query(query_str)
def update(self, record):
- names = record.get_field_names()
+ dont_update = ['date_created', 'last_updated']
+ fields = [field for field in record.fields.keys() if field not in dont_update]
+ fieldvals = record.get_field_value_strings(fields)
pairs = []
pairs = []
- for
name in name
s:
-
val = record.get_field_value_string(name
)
-
pairs.append(name
+ " = " + val)
+ for
field in field
s:
+
val = record.get_field_value_string(field
)
+
pairs.append(field
+ " = " + val)
update = ", ".join(pairs)
query_str = "UPDATE " + self.tablename+ " SET " + update + " WHERE key = '" + record.get_key() + "'"
update = ", ".join(pairs)
query_str = "UPDATE " + self.tablename+ " SET " + update + " WHERE key = '" + record.get_key() + "'"
@@
-137,6
+139,15
@@
class GeniTable:
result_rec_list.append(GeniRecord(dict=dict).as_dict())
return result_rec_list
result_rec_list.append(GeniRecord(dict=dict).as_dict())
return result_rec_list
+ def drop(self):
+ try:
+ self.cnx.query('DROP TABLE IF EXISTS ' + self.tablename)
+ except ProgrammingError:
+ try:
+ self.cnx.query('DROP TABLE ' + self.tablename)
+ except ProgrammingError:
+ pass
+
@staticmethod
def geni_records_purge(cninfo):
@staticmethod
def geni_records_purge(cninfo):