java.sql.Blob???????????????????????????java.sql.Clob?????????????????????????????????

JDBC 2.0??????java.sql.Blob???SQL???BLOB(binary large object)?????????????????????java.sql.Clob???SQL???CLOB(character large object)????????????????????????

java.sql.Blob???java.sql.Clob?????????(large object)???????????????????????????????????????????????????????????????????????????Derby??????????????????????????????????????????????????????????????????????????????????????????BLOB???????????????????????????????????????????????????????????????LOB???????????????????????????????????????????????????

?????????Derby?????????????????????????????????BLOB???CLOB?????????????????????????????? ??????Derby???????????????????????????????????????????????????????????????????????????
java.sql.Blob???java.sql.Clob??????????????????????????????????????????????????????
  • ?????????SQL???BLOB????????????????????????LONG VARCHAR FOR BIT DATA???BINARY?????????VARCHAR FOR BIT DATA????????????????????????
  • ?????????SQL???CLOB????????????????????????LONG VARCHAR???CHAR?????????VARCHAR????????????????????????
  • java.sql.ResultSet???????????????????????????getBlob????????????getClob?????????????????????????????????????????????????????????BLOB???CLOB?????????????????????
  • LOB???????????????????????????????????????????????????????????????????????????

?????????????????????BLOB???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

Derby???????????????????????????(1??????2?????????)??????????????????????????????????????????????????????ASCII??????(1???????????????1?????????)?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Derby????????????????????????BLOB???????????????????????????????????????????????? ?????????????????????????????????CLOB?????????????????????????????????

BLOB???CLOB???(LOB???)?????????
  • LOB????????????(=)????????????(!=??? <>. ???????????????????????????
  • LOB??????????????????????????????????????????????????????<??? <=??? >??? >=????????????????????????????????????
  • LOB??????????????????LOB???????????????????????????????????????
  • LOB??????????????????DISTINCT???GROUP BY???ORDER BY??????????????????????????????
  • ???????????????????????????LOB????????????????????????????????????????????????

Derby?????????CallableStatement???set?????????get????????????????????????????????????JDBC 2.0????????????????????????????????????????????????????????????????????????

????????????: java.sql.Blob???java.sql.Clob?????????????????????????????????????????????????????????????????????????????????????????????java.sql.Blob?????????java.sql.Clob??????????????????????????????????????????????????????????????????

??? 1. ???????????????JDBC 2.0 java.sql.Blob???????????????
????????? ??????????????? ???????????????
InputStream getBinaryStream()  
byte[] getBytes(long pos, int length) pos < 1???????????????pos???length???????????????????????????length <= 0????????????????????????????????????????????????
long length()  
long position(byte[] pattern, long start) pattern == null??????????????????start < 1??????????????????pattern???????????????0????????????????????????????????????????????????
long position(Blob pattern, long start) pattern == null???????????????start < 1???????????????pattern????????????0??????????????????pattern??????????????????????????????????????????????????????????????????????????????????????????
??? 2. ???????????????JDBC 2.0 java.sql.Clob ???????????????
????????? ??????????????? ??????????????????
InputStream getAsciiStream()  
Reader getCharacterStream()  
String getSubString(long pos, int length) pos < 1???????????????pos??? Clob????????????????????????????????????length <= 0????????????????????????????????????????????????
long length()  
long position(Clob searchstr, long start) searchStr == null????????????start < 1???????????????searchStr ????????????0???????????????searchStr??????????????????????????????????????????????????????????????????????????????????????????
long position(String searchstr, long start) searchStr == null???????????????start < 1???????????????pattern???????????????????????????????????????????????????????????????