package easik.database.types; //~--- non-JDK imports -------------------------------------------------------- //~--- JDK imports ------------------------------------------------------------ import java.sql.PreparedStatement; import java.sql.SQLException; import java.sql.Types; import easik.xml.xsd.nodes.types.XSDBaseType; import easik.xml.xsd.nodes.types.XSDType; /** * A class representing a BLOB ("B"inary "L"arge "Ob"ject) SQL data type. A BLOB * is used to store arbitrary binary data. Note that implementations vary * significantly: this will be mapped to the nearly-equivelant BYTEA type for * PostgreSQL, which can require special handling. It is best to look up how * your db handles BLOB/BYTEA/binary data types before using this BLOB type. */ public class Blob extends EasikType { /** * * * @return */ @Override public String toString() { return "BLOB"; } /** * * * @param input * * @return */ @Override public boolean verifyInput(final String input) { return true; } /** * * * @return */ @Override public int getSqlType() { return Types.BLOB; } /** * * * @param ps * @param col * @param value * * @throws SQLException */ @Override public void bindValue(final PreparedStatement ps, final int col, final String value) throws SQLException { ps.setString(col, value); } /** * * * @return */ @Override public XSDType getXMLSchemaType() { return XSDBaseType.xsHexBinary; } }