Prior to 1.7.0 there were problems storing Objects of normal column types in columns of the type OTHER. In 1.7.0 changes were made to allow this, but as all the conversion took place inside the engine, it introduced a requirement for all classes for objects stored in OTHER columns to be available on the runtime class path of the engine.
In 1.7.2, the introduction of real prepared statement support allows us revert to the pre 1.7.0 behaviour without the artificial limitations.
The classes for stored objects need not be available to open and operate the database in general. The classes need to be available only if a conversion from one of these objects to another type is performed inside the engine while operating the database. The current limitation is that in SQL statements, values of type String (CHARACTER and related SQL types) cannot be stored in columns of type OTHER. This limitation does not exist for String values assigned to PreparedStatement variables.
| Modifier and Type | Field and Description |
|---|---|
| private byte[] |
| Access | Constructor and Description |
|---|---|
| pack-priv | |
| public | JavaObjectData(byte[] data)
Constructor used inside the engine when an already serialized Object is read from a file (.log, .script, .data or text table source). |
| public | JavaObjectData(Serializable o)
Constructor used inside the engine to convert an Object into an object of type OTHER. |
| Modifier and Type | Method and Description |
|---|---|
| public boolean | equals(Object other)
Overrides java. Indicates whether some other object is "equal to" this one. |
| public byte[] | |
| public int | |
| public Object | |
| public int | |
| public String | Returns: a String representation of this object.Overrides java. Returns String representation of this object. |
| data | back to summary |
|---|---|
| private byte[] data | |
| JavaObjectData | back to summary |
|---|---|
| pack-priv JavaObjectData() | |
| JavaObjectData | back to summary |
|---|---|
| public JavaObjectData(byte[] data) Constructor used inside the engine when an already serialized Object is read from a file (.log, .script, .data or text table source). | |
| JavaObjectData | back to summary |
|---|---|
| public JavaObjectData(Serializable o) Constructor used inside the engine to convert an Object into an object of type OTHER. Used also with JDBC setParameter(). If parameter serialize is true, the Object is serialized for storage. | |
| equals | back to summary |
|---|---|
| public boolean equals(Object other) Overrides java. Doc from java. Indicates whether some other object is "equal to" this one.
The
An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes. | |
| getBytes | back to summary |
|---|---|
| public byte[] getBytes() | |
| getBytesLength | back to summary |
|---|---|
| public int getBytesLength() | |
| getObject | back to summary |
|---|---|
| public Object getObject() This method is called from classes implementing the JDBC interfaces. Inside the engine it is used for conversion from a value of type OTHER to another type. It will throw if the OTHER is an instance of a class that is not available. | |
| hashCode | back to summary |
|---|---|
| public int hashCode() Overrides java. Doc from java. Returns a hash code value for this object. This method is
supported for the benefit of hash tables such as those provided by
The general contract of
| |
| toString | back to summary |
|---|---|
| public String toString() Overrides java. Returns String representation of this object.
| |