Open Source RDBMS - Seamless, Scalable, Stable and Free

English | Login |Register

CUBRID PHP Driver 8.3.1 Release Note


8.3.1.0008

Changed and Enhanced Features:

  1. According to mysql_fetch_field, Add 4 properties(primary_key blob unsigned zerofill) in cubrid_fetch_field
  2. Add two functions, cubrid_pconnect and cubrid_pconnect_with_url, to support the persistent connection like mysql_pconnect
  3. Add a form of the url argument in cubrid_connect_with_url function

8.3.1.0007

Fixed bugs:

  1. Fix a bug about last_connect_id: if applications don't close all the connections, at some point retrieving data from database seems to be successfully but it does not return anything, only a warning message in the error_log that says someting like this: "11 is not a valid CUBRID-Connect resource"

8.3.1.0006

Changed and Enhanced Features:

  1. Add support for named placeholder for prepare statement;
  2. cubrid_lob_size returns lob size as a string, because it can't return 64-bit integer from php extension.

Fixed bugs:

  1. Fix a bug in cubrid_insert_id: max precision of insert id is 38, so it shouldn't return the value as integer, use string instead;
  2. Fix a bug about BLOB/CLOB: When inserting LOB data, if the data size is large enough, it will fails. If the LOB data is in a file, and it is too large to be put into memory, you can bind a file path name when binding the LOB data.

8.3.1.0005

Changed and Enhanced Features:

  1. Use long long to store lob size.

    The data type of BLOB/CLOB size is long long, but it can't return long long from PHP extension function. After tring serveral methods, I find that cubrid_lob_size should return a string just as PDO does. I will fix this problem in CUBRID PHP R4.0 release.

Fixed bugs:

  1. Fix a bug which may casue memory leak: After calling array_init(return_value), if error occures, it should destroy the array before returning false;
  2. Fix a bug in cubrid_bind: When the value of binding parameter is NULL, it will covert the value to empty string;
  3. Fix a bug in cubrid_real_escape string: When escaping single quote in string, it should use double single quotes, not backslash.

8.3.1.0004

  • zend_long64 don't exist in php-5.2.x, use size_t for LOB size instead.

8.3.1.0003

  • use zend_long64 to store LOB data size, not long.

8.3.1.0002

  • fix a bug in cubrid_fetch_object : cubrid_fetch_object can't work with php-5.2.x.
  • fix a bug in cubrid_bind : blob/clob data won't be binded correctly, which will cause cubrid_execute fail"

8.3.1.0001

2008 R3.1 Release

This release is a major release. CUBRID 3.1 Stable has been released. Several new features have been added to this version including new BLOB and CLOB data types and new APIs in JDBC/CCI which can get foreign key information. Accordingly new functions and features are added in this CUBRID PHP version, and some bugs have been fixed.

Functionality added:

1. Add more CUBRID-MySQL Compatibility functions:

  • cubrid_query
  • cubrid_close
  • cubrid_error
  • cubrid_errno
  • cubrid_client_encoding
  • cubrid_fetch_array
  • cubrid_db_name
  • cubrid_ping

2. Add Lob related functions:

  • cubrid_lob_get
  • cubrid_lob_close
  • cubrid_lob_size
  • cubrid_lob_export
  • cubrid_lob_send

Functionality removed:

Glo data type has been removed from CUBRID 3.1, BLOB/CLOB can be used to replace it. So removed Glo related functions:

  • cubrid_new_glo
  • cubrid_save_to_glo
  • cubrid_load_from_glo
  • cubrid_send_glo

Changed and Enhanced Features:

  1. Add three new schema type integer constants for cubrid_schema:

    CUBRID_SCH_IMPORTED_KEYS
    CUBRID_SCH_EXPORTED_KEYS
    CUBRID_SCH_CROSS_REFERENCE

    They can be used to get foreign key information.
  2. cubrid_bind support BLOB and CLOB data types.
  3. cubrid_unbuffered_query now is worthy of its name. It won't need to wait for that all query results have been complete. It will return when the results are being generated, so you can't use cubrid_num_rows and cubrid_data_seek on a result set returned from cubrid_unbuffered_query.
  4. cubrid_fetch_object: Add new parameters class_name and params, which can pass the name of class to instantiate and the constructor for class_name objects.
  5. When cubrid_schema and cubrid_col_size fails, return false instead of -1.

Fixed bugs:

  1. last db connetion/request resource management: If there is no variable to refer these resources, they will be removed by garbage collector.
  2. cubrid_execute: If cubrid fails to get result info after executing sql statement, there may be memory leak.
  3. cubrid_disconnect: When disconnecting any db connection, it will always reset the last request and connection info.
  4. cubrid_unbuffered_query: When query execution fails, it don't free the allocated request resource.
comments powered by Disqus
문서 정보
viewed 1868 times
번역 en
작성자
posted 2년 전
hellohuizhang
공헌자
마지막 수정시간 2년 전
변경 내역 보기
Share this article