Changeset 177


Ignore:
Timestamp:
Sep 28, 2004, 3:24:52 PM (15 years ago)
Author:
darcy
Message:

Use new error class hierarchy.

Remove some try/except statements and let the underlying C module errors
cascade up.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/module/pg.py

    r162 r177  
    141141                        return
    142142                elif newattnames:
    143                         raise error, "If supplied, newattnames must be a dictionary"
     143                        raise ProgrammingError, \
     144                                        "If supplied, newattnames must be a dictionary"
    144145
    145146                # May as well cache them
     
    223224                res = self.db.query(q).dictresult()
    224225                if res == []:
    225                         raise error, \
     226                        raise DatabaseError, \
    226227                                "No such record in %s where %s is %s" % \
    227228                                                                (cl, keyname, _quote(k, fnames[keyname]))
     
    244245                                n.append(f)
    245246
    246                 try:
    247                         q = "INSERT INTO %s (%s) VALUES (%s)" % \
    248                                 (cl, string.join(n, ','), string.join(l, ','))
    249                         self._do_debug(q)
    250                         a['oid_%s' % cl] = self.db.query(q)
    251                 except:
    252                         raise error, "Error inserting into %s: %s" % (cl, sys.exc_value)
     247                q = "INSERT INTO %s (%s) VALUES (%s)" % \
     248                        (cl, string.join(n, ','), string.join(l, ','))
     249                self._do_debug(q)
     250                a['oid_%s' % cl] = self.db.query(q)
    253251
    254252                # reload the dictionary to catch things modified by engine
     
    269267                        where = "%s = '%s'" % (self.__pkeys[cl], a[self.__pkeys[cl]])
    270268                else:
    271                         raise error, "Update needs primary key or oid as %s" % foid
     269                        raise ProgrammingError, \
     270                                        "Update needs primary key or oid as %s" % foid
    272271
    273272                v = []
     
    282281                        return None
    283282
    284                 try:
    285                         q = "UPDATE %s SET %s WHERE %s" % \
    286                                                         (cl, string.join(v, ','), where)
    287                         self._do_debug(q)
    288                         self.db.query(q)
    289                 except:
    290                         raise error, "Can't update %s: %s" % (cl, sys.exc_value)
     283                q = "UPDATE %s SET %s WHERE %s" % (cl, string.join(v, ','), where)
     284                self._do_debug(q)
     285                self.db.query(q)
    291286
    292287                # reload the dictionary to catch things modified by engine
     
    312307        # isn't referenced somewhere (or else PostgreSQL will)
    313308        def delete(self, cl, a):
    314                 try:
    315                         q = "DELETE FROM %s WHERE oid = %s" % (cl, a['oid_%s' % cl])
    316                         self._do_debug(q)
    317                         self.db.query(q)
    318                 except:
    319                         raise error, "Can't delete %s: %s" % (cl, sys.exc_value)
    320 
    321                 return None
    322 
     309                q = "DELETE FROM %s WHERE oid = %s" % (cl, a['oid_%s' % cl])
     310                self._do_debug(q)
     311                self.db.query(q)
     312
Note: See TracChangeset for help on using the changeset viewer.