bookmate game
Books
Albert Lukaszewski

MySQL for Python

  • DDaudalagidhas quoted2 years ago
    Catching different exceptions

    To customize which error is caught, we need different except clauses. The basic structure of this strategy is as follows:
    try:

    except ErrorType1:

    except ErrorType2:
  • DDaudalagidhas quoted2 years ago
    Each of the previous types can be caught with the DatabaseError type. However, catching them separately allows you to customize responses. For example, you may want the application to fail softly for the user when a ProgrammingError is raised but nonetheless want the exception to be reported to the development team. You can do that with customized exception handling.
  • DDaudalagidhas quoted2 years ago
    For exceptions see:
    http://python.about.com/od/pythonstandardlibrary/a/lib_exceptions.htm
    For warnings visit:
    http://python.about.com/od/pythonstandardlibrary/a/lib_warnings.htm
    The Python documentation also covers them at:
    http://docs.python.org/library/exceptions.html

    References

  • DDaudalagidhas quoted2 years ago
    except MySQLdb.Error, e:
    print "An error has been passed. %s" %e
  • DDaudalagidhas quoted2 years ago
    An exception is only explicitly registered when raise is used. Instead of the print statement used in the except clause previously, we can raise an error and update the print statement with the following line of code:
    raise MySQLdb.Error
    Instead of the friendly statement about an error passing, we get a stack trace that ends as follows:
    _mysql_exceptions.Error
  • DDaudalagidhas quoted2 years ago
    The executemany() method may be used not only to insert or update data, but may also be used to run multiple queries.
  • DDaudalagidhas quoted2 years ago
    Note that % is a universal quantifier and matches any number of any characters—even zero occurrences of characters.
  • DDaudalagidhas quoted2 years ago
    The savings here are in memory usage—more or less the same system resources are allotted for each iteration and then released back to the system to be allotted again. So memory usage does not ramp up with each iteration.
  • DDaudalagidhas quoted2 years ago
    Where fetchone() was simply a method of the cursor object, fetchmany() requires the desired number of records to be passed as an argument. The basic syntax of the call is as follows:
    = .fetchmany()
  • DDaudalagidhas quoted2 years ago
    The common, non-technical view is that servers can process requests from multiple users at one time. This is erroneous. Servers process requests quickly using a first-in first-out (FIFO) queue system.
fb2epub
Drag & drop your files (not more than 5 at once)