## com.ziclix.python.sql
Class PyConnection

    java.lang.Object
      org.python.core.PyObject
          com.ziclix.python.sql.PyConnection

All Implemented Interfaces:
  Serializable, ClassDictInit, ContextManager

    public class PyConnection

extends PyObject
implements ClassDictInit, ContextManager

A connection to the database.

Version:
  $Revision: 7015 $
Author:
  brian zimmer, last revised by $Author: pjenvey $
See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class org.python.core.PyObject
`PyObject.ConversionException`

Field Summary

Fields inherited from class org.python.core.PyObject
`TYPE`

Constructor Summary
`PyConnection(Connection connection)` Create a PyConnection with the open connection.

Method Summary
`PyObject` `__enter__()`
`PyObject` `__enter__(ThreadState ts)`
`boolean` `__exit__(PyObject type, PyObject value, PyObject traceback)`
`boolean` `__exit__(ThreadState ts, PyException exception)`
`PyObject` `__findattr_ex__(String name)` Finds the attribute.
`void` `__setattr__(String name, PyObject value)` Sets the attribute.
`static void` `classDictInit(PyObject dict)` Method classDictInit
`void` `close()` Close the connection now (rather than whenever __del__ is called).
`void` `commit()` Commit any pending transaction to the database.
`PyCursor` `cursor()` Return a new Cursor Object using the connection.
`PyCursor` `cursor(boolean dynamicFetch)` Return a new Cursor Object using the connection.
`PyCursor` `cursor(boolean dynamicFetch, PyObject rsType, PyObject rsConcur)` Return a new Cursor Object using the connection.
`PyObject` `nativesql(PyObject nativeSQL)` Converts the given SQL statement into the system's native SQL grammar.
`void` `rollback()` This method is optional since not all databases provide transaction support.
`String` `toString()` Produces a string representation of the object.

Methods inherited from class org.python.core.PyObject

`__abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __cmp__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __eq__, __findattr__, __findattr__, __finditem__, __finditem__, __finditem__, __float__, __floordiv__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __getnewargs__, __getslice__, __getslice__, __gt__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __index__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __iter__, __iternext__, __itruediv__, __ixor__, __le__, __len__, __long__, __lshift__, __lt__, __mod__, __mul__, __ne__, __neg__, __nonzero__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __reduce__, __reduce_ex__, __reduce_ex__, __repr__, __rfloordiv__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, __str__, __sub__, __tojava__, __truediv__, __unicode__, __xor__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _iadd, _iand, _idiv, _idivmod, _ifloordiv, _ilshift, _imod, _imul, _in, _ior, _ipow, _irshift, _is, _isnot, _isub, _itruediv, _ixor, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asDouble, asIndex, asIndex, asInt, asInt, asIterable, asLong, asLong, asName, asName, asString, asString, asStringOrNull, asStringOrNull, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getType, hashCode, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isMappingType, isNumberType, isSequenceType, noAttributeError, readonlyAttributeError, setDict, setType`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, wait, wait, wait`

Constructor Detail

### PyConnection

    public PyConnection(Connection connection)
                 throws SQLException

  Create a PyConnection with the open connection.

  Parameters:
    `connection` -
  Throws:
    `SQLException`

Method Detail

### toString

    public String toString()

  Produces a string representation of the object.

  Overrides:
    `toString` in class `PyObject`
  Returns:
    string representation of the object.

### classDictInit

    public static void classDictInit(PyObject dict)

  Method classDictInit

  Parameters:
    `dict` -

### __setattr__

    public void __setattr__(String name,
                            PyObject value)

  Sets the attribute.

  Overrides:
    `__setattr__` in class `PyObject`
  Parameters:
    `name` -
    `value` -
  See Also:
    `PyObject.__setattr__(PyString, PyObject)`

### __findattr_ex__

    public PyObject __findattr_ex__(String name)

  Finds the attribute.

  Overrides:
    `__findattr_ex__` in class `PyObject`
  Parameters:
    `name` - the name of the attribute of interest
  Returns:
    the value for the attribute of the specified name

### close

    public void close()

  Close the connection now (rather than whenever __del__ is called). The connection will be unusable from this point forward; an Error (or subclass) exception will be raised if any operation is attempted with the connection. The same applies to all cursor objects trying to use the connection.

### commit

    public void commit()

  Commit any pending transaction to the database. Note that if the database supports an auto-commit feature, this must be initially off. An interface method may be provided to turn it back on.

  Database modules that do not support transactions should implement this method with void functionality.

### rollback

    public void rollback()

  This method is optional since not all databases provide transaction support.

  In case a database does provide transactions this method causes the database to roll back to the start of any pending transaction. Closing a connection without committing the changes first will cause an implicit rollback to be performed.

### nativesql

    public PyObject nativesql(PyObject nativeSQL)

  Converts the given SQL statement into the system's native SQL grammar. A driver may convert the JDBC sql grammar into its system's native SQL grammar prior to sending it; this method returns the native form of the statement that the driver would have sent.

  Parameters:
    `nativeSQL` -
  Returns:
    the native form of this statement

### cursor

    public PyCursor cursor()

  Return a new Cursor Object using the connection. If the database does not provide a direct cursor concept, the module will have to emulate cursors using other means to the extent needed by this specification.

  Returns:
    a new cursor using this connection

### cursor

    public PyCursor cursor(boolean dynamicFetch)

  Return a new Cursor Object using the connection. If the database does not provide a direct cursor concept, the module will have to emulate cursors using other means to the extent needed by this specification.

  Parameters:
    `dynamicFetch` - if true, dynamically iterate the result
  Returns:
    a new cursor using this connection

### cursor

    public PyCursor cursor(boolean dynamicFetch,
                           PyObject rsType,
                           PyObject rsConcur)

  Return a new Cursor Object using the connection. If the database does not provide a direct cursor concept, the module will have to emulate cursors using other means to the extent needed by this specification.

  Parameters:
    `dynamicFetch` - if true, dynamically iterate the result
    `rsType` - the type of the underlying ResultSet
    `rsConcur` - the concurrency of the underlying ResultSet
  Returns:
    a new cursor using this connection

### __enter__

    public PyObject __enter__(ThreadState ts)

  Specified by:
    `__enter__` in interface `ContextManager`

### __enter__

    public PyObject __enter__()

### __exit__

    public boolean __exit__(ThreadState ts,
                            PyException exception)

  Specified by:
    `__exit__` in interface `ContextManager`

### __exit__

    public boolean __exit__(PyObject type,
                            PyObject value,
                            PyObject traceback)

Jython homepage