Firebird API Test Suite Copyright MWA Software 2016-2021 Starting Tests Client API Version = 4.0 Firebird Environment Variable = /opt/firebird4.0.0 Firebird Bin Directory = /opt/firebird4.0.0/bin Firebird Conf Directory = /opt/firebird4.0.0/ Firebird Client Library Path = /opt/firebird4.0.0/lib/libfbclient.so Running Test 1: Create and Drop a Database Creating a Database with empty parameters Create Database fails (as expected): I/O error during "open O_CREAT" operation for file "" -Error while trying to create file -No such file or directory Creating a Database using an SQL Statement Database ID = 4 FB = /tmp/fbintf-testsuite/testsuite1.fdb SN = zeus SQL Dialect = 3 DB Connect String = inet://localhost//tmp/fbintf-testsuite/testsuite1.fdb DB Charset ID = 0 DB SQL Dialect = 3 DB Remote Protocol = TCPv4 DB ODS Major Version = 13 DB ODS Minor Version = 0 User Authentication Method = Srp256 Firebird Library Path = /opt/firebird4.0.0/lib/libfbclient.so DB Client Implementation Version = 4.0 DPB: Item Count = 3 isc_dpb_user_name = SYSDBA isc_dpb_password = masterkey isc_dpb_set_db_sql_dialect = 3 Firebird Server Version Info Firebird/Linux/AMD/Intel/x64 (access method), version "LI-V4.0.0.2496 Firebird 4.0" Firebird/Linux/AMD/Intel/x64 (remote server), version "LI-V4.0.0.2496 Firebird 4.0/tcp (zeus)/P16:C" Firebird/Linux/AMD/Intel/x64 (remote interface), version "LI-V4.0.0.2496 Firebird 4.0/tcp (zeus)/P16:C" on disk structure version 13.0 Dropping Database Creating a Database with a DPD DB Connect String = inet://localhost//tmp/fbintf-testsuite/testsuite1.fdb DB Charset ID = 4 DB SQL Dialect = 3 DB Remote Protocol = TCPv4 DB ODS Major Version = 13 DB ODS Minor Version = 0 User Authentication Method = Srp256 Firebird Library Path = /opt/firebird4.0.0/lib/libfbclient.so DB Client Implementation Version = 4.0 Dropping Database DPB: Item Count = 4 isc_dpb_user_name = SYSDBA isc_dpb_password = masterkey isc_dpb_lc_ctype = UTF8 isc_dpb_set_db_sql_dialect = 3 Creating a Database with a DPD Database ID = 4 FB = /tmp/fbintf-testsuite/testsuite1.fdb SN = zeus ODS major = 13 ODS minor = 0 DB Connect String = inet://localhost//tmp/fbintf-testsuite/testsuite1.fdb DB Charset ID = 4 DB SQL Dialect = 3 DB Remote Protocol = TCPv4 DB ODS Major Version = 13 DB ODS Minor Version = 0 User Authentication Method = Srp256 Firebird Library Path = /opt/firebird4.0.0/lib/libfbclient.so DB Client Implementation Version = 4.0 RDB$DESCRIPTION = RDB$RELATION_ID = 128 RDB$SECURITY_CLASS = SQL$385 RDB$CHARACTER_SET_NAME = UTF8 RDB$LINGER = RDB$SQL_SECURITY = Dropping Database ------------------------------------------------------ Running Test 2: Open the employee database and run a query Opening inet://localhost/employee Database Open, SQL Dialect = 3 TPB: Item Count = 3 isc_tpb_read isc_tpb_nowait isc_tpb_concurrency Metadata SQLType =SQL_SHORT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = EMP_NO Alias Name = EMP_NO Field Name = EMP_NO Scale = 0 Charset id = 0 Not Null Size = 2 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = FIRST_NAME Alias Name = FIRST_NAME Field Name = FIRST_NAME Scale = 0 Charset id = 0 Not Null Size = 15 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = LAST_NAME Alias Name = LAST_NAME Field Name = LAST_NAME Scale = 0 Charset id = 0 Not Null Size = 20 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = PHONE_EXT Alias Name = PHONE_EXT Field Name = PHONE_EXT Scale = 0 Charset id = 0 Nullable Size = 4 SQLType =SQL_TIMESTAMP sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = HIRE_DATE Alias Name = HIRE_DATE Field Name = HIRE_DATE Scale = 0 Charset id = 0 Not Null Size = 8 SQLType =SQL_TEXT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = DEPT_NO Alias Name = DEPT_NO Field Name = DEPT_NO Scale = 0 Charset id = 0 Not Null Size = 3 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_CODE Alias Name = JOB_CODE Field Name = JOB_CODE Scale = 0 Charset id = 0 Not Null Size = 5 SQLType =SQL_SHORT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_GRADE Alias Name = JOB_GRADE Field Name = JOB_GRADE Scale = 0 Charset id = 0 Not Null Size = 2 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_COUNTRY Alias Name = JOB_COUNTRY Field Name = JOB_COUNTRY Scale = 0 Charset id = 0 Not Null Size = 15 SQLType =SQL_INT64 sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = SALARY Alias Name = SALARY Field Name = SALARY Scale = -2 Charset id = 0 Not Null Size = 8 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = FULL_NAME Alias Name = FULL_NAME Field Name = FULL_NAME Scale = 0 Charset id = 0 Nullable Size = 37 Plan = Select Expression -> First N Records -> Table "EMPLOYEE" Full Scan -- SQL style inline comment /* this is a comment */ Select First 3 * from EMPLOYEE EMP_NO = 2 FIRST_NAME = Robert LAST_NAME = Nelson PHONE_EXT = 250 HIRE_DATE = 1988/12/28 00:00:00.0000 DEPT_NO = 600 JOB_CODE = VP JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 105,900.00 FULL_NAME = Nelson, Robert EMP_NO = 4 FIRST_NAME = Bruce LAST_NAME = Young PHONE_EXT = 233 HIRE_DATE = 1988/12/28 00:00:00.0000 DEPT_NO = 621 JOB_CODE = Eng JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 97,500.00 FULL_NAME = Young, Bruce EMP_NO = 5 FIRST_NAME = Kim LAST_NAME = Lambert PHONE_EXT = 22 HIRE_DATE = 1989/02/06 00:00:00.0000 DEPT_NO = 130 JOB_CODE = Eng JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 102,750.00 FULL_NAME = Lambert, Kim Select * from EMPLOYEE Where EMP_NO = ? SQL Params SQLType =SQL_SHORT sub type = 0 Field Name = Scale = 0 Charset id = 0 Not Null Size = 2 Value = 0 EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 1989/04/05 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie With param names Select * from EMPLOYEE Where EMP_NO = :EMP_NO SQL Params SQLType =SQL_SHORT sub type = 0 Field Name = EMP_NO Scale = 0 Charset id = 0 Not Null Size = 2 Value = 0 EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 1989/04/05 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie Now open the employee database as a local database TPB: Item Count = 3 isc_tpb_read isc_tpb_nowait isc_tpb_concurrency Metadata SQLType =SQL_SHORT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = EMP_NO Alias Name = EMP_NO Field Name = EMP_NO Scale = 0 Charset id = 0 Not Null Size = 2 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = FIRST_NAME Alias Name = FIRST_NAME Field Name = FIRST_NAME Scale = 0 Charset id = 0 Not Null Size = 15 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = LAST_NAME Alias Name = LAST_NAME Field Name = LAST_NAME Scale = 0 Charset id = 0 Not Null Size = 20 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = PHONE_EXT Alias Name = PHONE_EXT Field Name = PHONE_EXT Scale = 0 Charset id = 0 Nullable Size = 4 SQLType =SQL_TIMESTAMP sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = HIRE_DATE Alias Name = HIRE_DATE Field Name = HIRE_DATE Scale = 0 Charset id = 0 Not Null Size = 8 SQLType =SQL_TEXT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = DEPT_NO Alias Name = DEPT_NO Field Name = DEPT_NO Scale = 0 Charset id = 0 Not Null Size = 3 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_CODE Alias Name = JOB_CODE Field Name = JOB_CODE Scale = 0 Charset id = 0 Not Null Size = 5 SQLType =SQL_SHORT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_GRADE Alias Name = JOB_GRADE Field Name = JOB_GRADE Scale = 0 Charset id = 0 Not Null Size = 2 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_COUNTRY Alias Name = JOB_COUNTRY Field Name = JOB_COUNTRY Scale = 0 Charset id = 0 Not Null Size = 15 SQLType =SQL_INT64 sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = SALARY Alias Name = SALARY Field Name = SALARY Scale = -2 Charset id = 0 Not Null Size = 8 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = FULL_NAME Alias Name = FULL_NAME Field Name = FULL_NAME Scale = 0 Charset id = 0 Nullable Size = 37 Plan = Select Expression -> First N Records -> Table "EMPLOYEE" Full Scan -- SQL style inline comment /* this is a comment */ Select First 3 * from EMPLOYEE EMP_NO = 2 FIRST_NAME = Robert LAST_NAME = Nelson PHONE_EXT = 250 HIRE_DATE = 1988/12/28 00:00:00.0000 DEPT_NO = 600 JOB_CODE = VP JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 105,900.00 FULL_NAME = Nelson, Robert EMP_NO = 4 FIRST_NAME = Bruce LAST_NAME = Young PHONE_EXT = 233 HIRE_DATE = 1988/12/28 00:00:00.0000 DEPT_NO = 621 JOB_CODE = Eng JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 97,500.00 FULL_NAME = Young, Bruce EMP_NO = 5 FIRST_NAME = Kim LAST_NAME = Lambert PHONE_EXT = 22 HIRE_DATE = 1989/02/06 00:00:00.0000 DEPT_NO = 130 JOB_CODE = Eng JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 102,750.00 FULL_NAME = Lambert, Kim Select * from EMPLOYEE Where EMP_NO = ? SQL Params SQLType =SQL_SHORT sub type = 0 Field Name = Scale = 0 Charset id = 0 Not Null Size = 2 Value = 0 EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 1989/04/05 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie With param names Select * from EMPLOYEE Where EMP_NO = :EMP_NO SQL Params SQLType =SQL_SHORT sub type = 0 Field Name = EMP_NO Scale = 0 Charset id = 0 Not Null Size = 2 Value = 0 EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 1989/04/05 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie ------------------------------------------------------ Running Test 3: ad hoc queries Opening inet://localhost/employee Database Open Employee Count = 42 Employee Count = 41 Employee Count = 42 Employee Count = 41 Employee Count = 42 Constrained Employee Count = 3 "Johnson" Employee Count = 2 "Yanowski" Employee Count = 1 ------------------------------------------------------ Running Test 4: Update, Insert and Delete Queries Opening inet://localhost/employee Database Open Firebird/Linux/AMD/Intel/x64 (access method), version "LI-V4.0.0.2496 Firebird 4.0" Firebird/Linux/AMD/Intel/x64 (remote server), version "LI-V4.0.0.2496 Firebird 4.0/tcp (zeus)/P16:CZ" Firebird/Linux/AMD/Intel/x64 (remote interface), version "LI-V4.0.0.2496 Firebird 4.0/tcp (zeus)/P16:CZ" on disk structure version 13.0 Select Count = 1 InsertCount = 0 UpdateCount = 1 DeleteCount = 0 EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 1989/04/05 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie Current memory = 19,767,232 Delta memory = 4,464 Max memory = 19,813,104 Elapsed time= 0.001 sec Cpu = 0.000 sec Buffers = 2048 Reads = 0 Writes = 0 Fetches = 3 Select Count = 0 InsertCount = 1 UpdateCount = 0 DeleteCount = 0 Relation Name = EMPLOYEE Metadata SQLType =SQL_SHORT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = EMP_NO Alias Name = EMP_NO Field Name = EMP_NO Scale = 0 Charset id = 0 Not Null Size = 2 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = FIRST_NAME Alias Name = FIRST_NAME Field Name = FIRST_NAME Scale = 0 Charset id = 0 Not Null Size = 15 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = LAST_NAME Alias Name = LAST_NAME Field Name = LAST_NAME Scale = 0 Charset id = 0 Not Null Size = 20 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = PHONE_EXT Alias Name = PHONE_EXT Field Name = PHONE_EXT Scale = 0 Charset id = 0 Nullable Size = 4 SQLType =SQL_TIMESTAMP sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = HIRE_DATE Alias Name = HIRE_DATE Field Name = HIRE_DATE Scale = 0 Charset id = 0 Not Null Size = 8 SQLType =SQL_TEXT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = DEPT_NO Alias Name = DEPT_NO Field Name = DEPT_NO Scale = 0 Charset id = 0 Not Null Size = 3 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_CODE Alias Name = JOB_CODE Field Name = JOB_CODE Scale = 0 Charset id = 0 Not Null Size = 5 SQLType =SQL_SHORT sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_GRADE Alias Name = JOB_GRADE Field Name = JOB_GRADE Scale = 0 Charset id = 0 Not Null Size = 2 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = JOB_COUNTRY Alias Name = JOB_COUNTRY Field Name = JOB_COUNTRY Scale = 0 Charset id = 0 Not Null Size = 15 SQLType =SQL_INT64 sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = SALARY Alias Name = SALARY Field Name = SALARY Scale = -2 Charset id = 0 Not Null Size = 8 SQLType =SQL_VARYING sub type = 0 Table = EMPLOYEE Owner = SYSDBA Column Name = FULL_NAME Alias Name = FULL_NAME Field Name = FULL_NAME Scale = 0 Charset id = 0 Nullable Size = 37 EMP_NO = 150 FIRST_NAME = John LAST_NAME = Doe PHONE_EXT = HIRE_DATE = 2015/04/01 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 41,000.89 FULL_NAME = Doe, John Select Count = 0 InsertCount = 1 UpdateCount = 0 DeleteCount = 0 EMP_NO = 151 FIRST_NAME = Major LAST_NAME = Major PHONE_EXT = HIRE_DATE = 2015/04/01 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 40,000.59 FULL_NAME = Major, Major Now Delete the rows Select Count = 1 InsertCount = 0 UpdateCount = 0 DeleteCount = 1 Select Count = 1 InsertCount = 0 UpdateCount = 0 DeleteCount = 1 Inserting Select Count = 0 InsertCount = 1 UpdateCount = 0 DeleteCount = 0 EMP_NO = 150 FIRST_NAME = Jane LAST_NAME = Doe PHONE_EXT = NULL HIRE_DATE = 2015/04/01 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 41,000.89 FULL_NAME = Doe, Jane Employee Count = 43 Updating Select Count = 1 InsertCount = 0 UpdateCount = 0 DeleteCount = 0 Prepare Query again EMP_NO = 150 FIRST_NAME = Jayne's LAST_NAME = Doe PHONE_EXT = NULL HIRE_DATE = 2015/04/01 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 41,000.89 FULL_NAME = Doe, Jayne's Prepare Query again with a different transaction EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 1989/04/05 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie Open Cursor with a different transaction EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 1989/04/05 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie Same Statement - updated params EMP_NO = 9 FIRST_NAME = Phil LAST_NAME = Forest PHONE_EXT = 229 HIRE_DATE = 1989/04/17 00:00:00.0000 DEPT_NO = 622 JOB_CODE = Mngr JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 75,060.00 FULL_NAME = Forest, Phil Test using Execute Block Select Count = 1 InsertCount = 0 UpdateCount = 1 DeleteCount = 0 EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 2015/01/31 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie ------------------------------------------------------ Running Test 5: Update Returning and Activity Check Opening inet://localhost/employee Database Open Database Closed Database Open Select Count = 1 InsertCount = 0 UpdateCount = 1 DeleteCount = 0 Last Name = Johnson EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 2016/01/31 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie Inserting Full Name = Doe, John Select Count = 0 InsertCount = 1 UpdateCount = 0 DeleteCount = 0 Database Activity = TRUE Transaction Activity = TRUE Database Activity = FALSE Transaction Activity = FALSE Employee Count = 43 Database Activity = TRUE Transaction Activity = TRUE Transaction Active Transaction inactive ------------------------------------------------------ Running Test 6: Blob Handling Metadata SQLType =SQL_TEXT sub type = 0 Table = RDB$CHARACTER_SETS Owner = SYSDBA Column Name = RDB$CHARACTER_SET_NAME Alias Name = RDB$CHARACTER_SET_NAME Field Name = RDB$CHARACTER_SET_NAME Scale = 0 Charset id = 4 Nullable Size = 252 SQLType =SQL_SHORT sub type = 0 Table = RDB$CHARACTER_SETS Owner = SYSDBA Column Name = RDB$CHARACTER_SET_ID Alias Name = RDB$CHARACTER_SET_ID Field Name = RDB$CHARACTER_SET_ID Scale = 0 Charset id = 0 Nullable Size = 2 RDB$CHARACTER_SET_NAME = NONE (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 0 RDB$CHARACTER_SET_NAME = OCTETS (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 1 RDB$CHARACTER_SET_NAME = ASCII (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 2 RDB$CHARACTER_SET_NAME = UNICODE_FSS (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 3 RDB$CHARACTER_SET_NAME = UTF8 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 4 RDB$CHARACTER_SET_NAME = SJIS_0208 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 5 RDB$CHARACTER_SET_NAME = EUCJ_0208 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 6 RDB$CHARACTER_SET_NAME = DOS737 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 9 RDB$CHARACTER_SET_NAME = DOS437 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 10 RDB$CHARACTER_SET_NAME = DOS850 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 11 RDB$CHARACTER_SET_NAME = DOS865 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 12 RDB$CHARACTER_SET_NAME = DOS860 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 13 RDB$CHARACTER_SET_NAME = DOS863 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 14 RDB$CHARACTER_SET_NAME = DOS775 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 15 RDB$CHARACTER_SET_NAME = DOS858 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 16 RDB$CHARACTER_SET_NAME = DOS862 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 17 RDB$CHARACTER_SET_NAME = DOS864 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 18 RDB$CHARACTER_SET_NAME = NEXT (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 19 RDB$CHARACTER_SET_NAME = ISO8859_1 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 21 RDB$CHARACTER_SET_NAME = ISO8859_2 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 22 RDB$CHARACTER_SET_NAME = ISO8859_3 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 23 RDB$CHARACTER_SET_NAME = ISO8859_4 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 34 RDB$CHARACTER_SET_NAME = ISO8859_5 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 35 RDB$CHARACTER_SET_NAME = ISO8859_6 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 36 RDB$CHARACTER_SET_NAME = ISO8859_7 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 37 RDB$CHARACTER_SET_NAME = ISO8859_8 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 38 RDB$CHARACTER_SET_NAME = ISO8859_9 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 39 RDB$CHARACTER_SET_NAME = ISO8859_13 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 40 RDB$CHARACTER_SET_NAME = KSC_5601 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 44 RDB$CHARACTER_SET_NAME = DOS852 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 45 RDB$CHARACTER_SET_NAME = DOS857 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 46 RDB$CHARACTER_SET_NAME = DOS861 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 47 RDB$CHARACTER_SET_NAME = DOS866 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 48 RDB$CHARACTER_SET_NAME = DOS869 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 49 RDB$CHARACTER_SET_NAME = CYRL (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 50 RDB$CHARACTER_SET_NAME = WIN1250 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 51 RDB$CHARACTER_SET_NAME = WIN1251 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 52 RDB$CHARACTER_SET_NAME = WIN1252 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 53 RDB$CHARACTER_SET_NAME = WIN1253 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 54 RDB$CHARACTER_SET_NAME = WIN1254 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 55 RDB$CHARACTER_SET_NAME = BIG_5 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 56 RDB$CHARACTER_SET_NAME = GB_2312 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 57 RDB$CHARACTER_SET_NAME = WIN1255 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 58 RDB$CHARACTER_SET_NAME = WIN1256 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 59 RDB$CHARACTER_SET_NAME = WIN1257 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 60 RDB$CHARACTER_SET_NAME = KOI8R (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 63 RDB$CHARACTER_SET_NAME = KOI8U (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 64 RDB$CHARACTER_SET_NAME = WIN1258 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 65 RDB$CHARACTER_SET_NAME = TIS620 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 66 RDB$CHARACTER_SET_NAME = GBK (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 67 RDB$CHARACTER_SET_NAME = CP943C (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 68 RDB$CHARACTER_SET_NAME = GB18030 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 69 Metadata SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = FIXEDPOINT Alias Name = FIXEDPOINT Field Name = FIXEDPOINT Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = FLOATINGPOINT Alias Name = FLOATINGPOINT Field Name = FLOATINGPOINT Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_VARYING sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = TITLE Alias Name = TITLE Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_BLOB sub type = 1 Table = TESTDATA Owner = SYSDBA Column Name = BLOBDATA Alias Name = BLOBDATA Field Name = BLOBDATA Scale = 0 Charset id = 4 Nullable Size = 8 Blob Meta Data SQL SubType =1 Table = TESTDATA Column = BLOBDATA CharSetID = 4 Segment Size = 80 SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_LONG sub type = 0 Field Name = FP Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Field Name = DP Scale = 0 Charset id = 0 Nullable Size = 8 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) BLOBDATA = NULL SQL Params SQLType =SQL_BLOB sub type = 1 Field Name = Scale = 0 Charset id = 4 Nullable Size = 8 SQLType =SQL_LONG sub type = 0 Field Name = Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) BLOBDATA (Charset Id = 4 Codepage = 65001) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_LONG sub type = 0 Field Name = FP Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Field Name = DP Scale = 0 Charset id = 0 Nullable Size = 8 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) BLOBDATA (Charset Id = 4 Codepage = 65001) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered ROWID = 2 FIXEDPOINT = NULL FLOATINGPOINT = NULL TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) BLOBDATA (Charset Id = 4 Codepage = 65001) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered Testing Blob as stored proc parameter Metadata SQLType =SQL_BLOB sub type = 1 Table = TESTPROC Owner = SYSDBA Column Name = BLOBDATA Alias Name = BLOBDATA Field Name = BLOBDATA Scale = 0 Charset id = 4 Nullable Size = 8 Blob Meta Data SQL SubType =1 Table = TESTPROC Column = BLOBDATA CharSetID = 4 Segment Size = 80 BLOBDATA (Charset Id = 4 Codepage = 65001) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered Metadata SQLType =SQL_TEXT sub type = 0 Table = RDB$CHARACTER_SETS Owner = SYSDBA Column Name = RDB$CHARACTER_SET_NAME Alias Name = RDB$CHARACTER_SET_NAME Field Name = RDB$CHARACTER_SET_NAME Scale = 0 Charset id = 53 Nullable Size = 63 SQLType =SQL_SHORT sub type = 0 Table = RDB$CHARACTER_SETS Owner = SYSDBA Column Name = RDB$CHARACTER_SET_ID Alias Name = RDB$CHARACTER_SET_ID Field Name = RDB$CHARACTER_SET_ID Scale = 0 Charset id = 0 Nullable Size = 2 RDB$CHARACTER_SET_NAME = NONE (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 0 RDB$CHARACTER_SET_NAME = OCTETS (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 1 RDB$CHARACTER_SET_NAME = ASCII (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 2 RDB$CHARACTER_SET_NAME = UNICODE_FSS (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 3 RDB$CHARACTER_SET_NAME = UTF8 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 4 RDB$CHARACTER_SET_NAME = SJIS_0208 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 5 RDB$CHARACTER_SET_NAME = EUCJ_0208 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 6 RDB$CHARACTER_SET_NAME = DOS737 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 9 RDB$CHARACTER_SET_NAME = DOS437 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 10 RDB$CHARACTER_SET_NAME = DOS850 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 11 RDB$CHARACTER_SET_NAME = DOS865 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 12 RDB$CHARACTER_SET_NAME = DOS860 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 13 RDB$CHARACTER_SET_NAME = DOS863 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 14 RDB$CHARACTER_SET_NAME = DOS775 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 15 RDB$CHARACTER_SET_NAME = DOS858 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 16 RDB$CHARACTER_SET_NAME = DOS862 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 17 RDB$CHARACTER_SET_NAME = DOS864 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 18 RDB$CHARACTER_SET_NAME = NEXT (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 19 RDB$CHARACTER_SET_NAME = ISO8859_1 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 21 RDB$CHARACTER_SET_NAME = ISO8859_2 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 22 RDB$CHARACTER_SET_NAME = ISO8859_3 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 23 RDB$CHARACTER_SET_NAME = ISO8859_4 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 34 RDB$CHARACTER_SET_NAME = ISO8859_5 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 35 RDB$CHARACTER_SET_NAME = ISO8859_6 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 36 RDB$CHARACTER_SET_NAME = ISO8859_7 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 37 RDB$CHARACTER_SET_NAME = ISO8859_8 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 38 RDB$CHARACTER_SET_NAME = ISO8859_9 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 39 RDB$CHARACTER_SET_NAME = ISO8859_13 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 40 RDB$CHARACTER_SET_NAME = KSC_5601 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 44 RDB$CHARACTER_SET_NAME = DOS852 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 45 RDB$CHARACTER_SET_NAME = DOS857 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 46 RDB$CHARACTER_SET_NAME = DOS861 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 47 RDB$CHARACTER_SET_NAME = DOS866 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 48 RDB$CHARACTER_SET_NAME = DOS869 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 49 RDB$CHARACTER_SET_NAME = CYRL (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 50 RDB$CHARACTER_SET_NAME = WIN1250 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 51 RDB$CHARACTER_SET_NAME = WIN1251 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 52 RDB$CHARACTER_SET_NAME = WIN1252 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 53 RDB$CHARACTER_SET_NAME = WIN1253 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 54 RDB$CHARACTER_SET_NAME = WIN1254 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 55 RDB$CHARACTER_SET_NAME = BIG_5 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 56 RDB$CHARACTER_SET_NAME = GB_2312 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 57 RDB$CHARACTER_SET_NAME = WIN1255 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 58 RDB$CHARACTER_SET_NAME = WIN1256 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 59 RDB$CHARACTER_SET_NAME = WIN1257 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 60 RDB$CHARACTER_SET_NAME = KOI8R (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 63 RDB$CHARACTER_SET_NAME = KOI8U (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 64 RDB$CHARACTER_SET_NAME = WIN1258 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 65 RDB$CHARACTER_SET_NAME = TIS620 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 66 RDB$CHARACTER_SET_NAME = GBK (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 67 RDB$CHARACTER_SET_NAME = CP943C (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 68 RDB$CHARACTER_SET_NAME = GB18030 (Charset Id = 53 Codepage = 1252) RDB$CHARACTER_SET_ID = 69 Metadata SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = FIXEDPOINT Alias Name = FIXEDPOINT Field Name = FIXEDPOINT Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = FLOATINGPOINT Alias Name = FLOATINGPOINT Field Name = FLOATINGPOINT Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_VARYING sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = TITLE Alias Name = TITLE Field Name = TITLE Scale = 0 Charset id = 53 Nullable Size = 32 SQLType =SQL_BLOB sub type = 1 Table = TESTDATA Owner = SYSDBA Column Name = BLOBDATA Alias Name = BLOBDATA Field Name = BLOBDATA Scale = 0 Charset id = 53 Nullable Size = 8 Blob Meta Data SQL SubType =1 Table = TESTDATA Column = BLOBDATA CharSetID = 53 Segment Size = 80 SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 53 Nullable Size = 32 SQLType =SQL_LONG sub type = 0 Field Name = FP Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Field Name = DP Scale = 0 Charset id = 0 Nullable Size = 8 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 53 Codepage = 1252) BLOBDATA = NULL SQL Params SQLType =SQL_BLOB sub type = 1 Field Name = Scale = 0 Charset id = 53 Nullable Size = 8 SQLType =SQL_LONG sub type = 0 Field Name = Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 53 Codepage = 1252) BLOBDATA (Charset Id = 53 Codepage = 1252) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 53 Nullable Size = 32 SQLType =SQL_LONG sub type = 0 Field Name = FP Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Field Name = DP Scale = 0 Charset id = 0 Nullable Size = 8 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 53 Codepage = 1252) BLOBDATA (Charset Id = 53 Codepage = 1252) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered ROWID = 2 FIXEDPOINT = NULL FLOATINGPOINT = NULL TITLE = Blob Test ©€ (Charset Id = 53 Codepage = 1252) BLOBDATA (Charset Id = 53 Codepage = 1252) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered Testing Blob as stored proc parameter Metadata SQLType =SQL_BLOB sub type = 1 Table = TESTPROC Owner = SYSDBA Column Name = BLOBDATA Alias Name = BLOBDATA Field Name = BLOBDATA Scale = 0 Charset id = 53 Nullable Size = 8 Blob Meta Data SQL SubType =1 Table = TESTPROC Column = BLOBDATA CharSetID = 53 Segment Size = 80 BLOBDATA (Charset Id = 53 Codepage = 1252) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered Metadata SQLType =SQL_TEXT sub type = 0 Table = RDB$CHARACTER_SETS Owner = SYSDBA Column Name = RDB$CHARACTER_SET_NAME Alias Name = RDB$CHARACTER_SET_NAME Field Name = RDB$CHARACTER_SET_NAME Scale = 0 Charset id = 4 Nullable Size = 252 SQLType =SQL_SHORT sub type = 0 Table = RDB$CHARACTER_SETS Owner = SYSDBA Column Name = RDB$CHARACTER_SET_ID Alias Name = RDB$CHARACTER_SET_ID Field Name = RDB$CHARACTER_SET_ID Scale = 0 Charset id = 0 Nullable Size = 2 RDB$CHARACTER_SET_NAME = NONE (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 0 RDB$CHARACTER_SET_NAME = OCTETS (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 1 RDB$CHARACTER_SET_NAME = ASCII (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 2 RDB$CHARACTER_SET_NAME = UNICODE_FSS (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 3 RDB$CHARACTER_SET_NAME = UTF8 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 4 RDB$CHARACTER_SET_NAME = SJIS_0208 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 5 RDB$CHARACTER_SET_NAME = EUCJ_0208 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 6 RDB$CHARACTER_SET_NAME = DOS737 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 9 RDB$CHARACTER_SET_NAME = DOS437 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 10 RDB$CHARACTER_SET_NAME = DOS850 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 11 RDB$CHARACTER_SET_NAME = DOS865 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 12 RDB$CHARACTER_SET_NAME = DOS860 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 13 RDB$CHARACTER_SET_NAME = DOS863 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 14 RDB$CHARACTER_SET_NAME = DOS775 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 15 RDB$CHARACTER_SET_NAME = DOS858 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 16 RDB$CHARACTER_SET_NAME = DOS862 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 17 RDB$CHARACTER_SET_NAME = DOS864 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 18 RDB$CHARACTER_SET_NAME = NEXT (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 19 RDB$CHARACTER_SET_NAME = ISO8859_1 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 21 RDB$CHARACTER_SET_NAME = ISO8859_2 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 22 RDB$CHARACTER_SET_NAME = ISO8859_3 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 23 RDB$CHARACTER_SET_NAME = ISO8859_4 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 34 RDB$CHARACTER_SET_NAME = ISO8859_5 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 35 RDB$CHARACTER_SET_NAME = ISO8859_6 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 36 RDB$CHARACTER_SET_NAME = ISO8859_7 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 37 RDB$CHARACTER_SET_NAME = ISO8859_8 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 38 RDB$CHARACTER_SET_NAME = ISO8859_9 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 39 RDB$CHARACTER_SET_NAME = ISO8859_13 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 40 RDB$CHARACTER_SET_NAME = KSC_5601 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 44 RDB$CHARACTER_SET_NAME = DOS852 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 45 RDB$CHARACTER_SET_NAME = DOS857 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 46 RDB$CHARACTER_SET_NAME = DOS861 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 47 RDB$CHARACTER_SET_NAME = DOS866 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 48 RDB$CHARACTER_SET_NAME = DOS869 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 49 RDB$CHARACTER_SET_NAME = CYRL (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 50 RDB$CHARACTER_SET_NAME = WIN1250 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 51 RDB$CHARACTER_SET_NAME = WIN1251 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 52 RDB$CHARACTER_SET_NAME = WIN1252 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 53 RDB$CHARACTER_SET_NAME = WIN1253 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 54 RDB$CHARACTER_SET_NAME = WIN1254 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 55 RDB$CHARACTER_SET_NAME = BIG_5 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 56 RDB$CHARACTER_SET_NAME = GB_2312 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 57 RDB$CHARACTER_SET_NAME = WIN1255 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 58 RDB$CHARACTER_SET_NAME = WIN1256 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 59 RDB$CHARACTER_SET_NAME = WIN1257 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 60 RDB$CHARACTER_SET_NAME = KOI8R (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 63 RDB$CHARACTER_SET_NAME = KOI8U (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 64 RDB$CHARACTER_SET_NAME = WIN1258 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 65 RDB$CHARACTER_SET_NAME = TIS620 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 66 RDB$CHARACTER_SET_NAME = GBK (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 67 RDB$CHARACTER_SET_NAME = CP943C (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 68 RDB$CHARACTER_SET_NAME = GB18030 (Charset Id = 4 Codepage = 65001) RDB$CHARACTER_SET_ID = 69 Metadata SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = FIXEDPOINT Alias Name = FIXEDPOINT Field Name = FIXEDPOINT Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = FLOATINGPOINT Alias Name = FLOATINGPOINT Field Name = FLOATINGPOINT Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_VARYING sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = TITLE Alias Name = TITLE Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_BLOB sub type = 1 Table = TESTDATA Owner = SYSDBA Column Name = BLOBDATA Alias Name = BLOBDATA Field Name = BLOBDATA Scale = 0 Charset id = 4 Nullable Size = 8 Blob Meta Data SQL SubType =1 Table = TESTDATA Column = BLOBDATA CharSetID = 4 Segment Size = 80 SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_LONG sub type = 0 Field Name = FP Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Field Name = DP Scale = 0 Charset id = 0 Nullable Size = 8 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) BLOBDATA = NULL SQL Params SQLType =SQL_BLOB sub type = 1 Field Name = Scale = 0 Charset id = 4 Nullable Size = 8 SQLType =SQL_LONG sub type = 0 Field Name = Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) BLOBDATA (Charset Id = 4 Codepage = 65001) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_LONG sub type = 0 Field Name = FP Scale = -2 Charset id = 0 Nullable Size = 4 SQLType =SQL_DOUBLE sub type = 0 Field Name = DP Scale = 0 Charset id = 0 Nullable Size = 8 ROWID = 1 FIXEDPOINT = 20.28 FLOATINGPOINT = 3.14 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) BLOBDATA (Charset Id = 4 Codepage = 65001) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered ROWID = 2 FIXEDPOINT = NULL FLOATINGPOINT = NULL TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) BLOBDATA (Charset Id = 4 Codepage = 65001) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered Testing Blob as stored proc parameter Metadata SQLType =SQL_BLOB sub type = 1 Table = TESTPROC Owner = SYSDBA Column Name = BLOBDATA Alias Name = BLOBDATA Field Name = BLOBDATA Scale = 0 Charset id = 4 Nullable Size = 8 Blob Meta Data SQL SubType =1 Table = TESTPROC Column = BLOBDATA CharSetID = 4 Segment Size = 80 BLOBDATA (Charset Id = 4 Codepage = 65001) To be or not to be-that is the question: Whether 'tis nobler in the mind to suffer The slings and arrows of outrageous fortune, Or to take arms against a sea of troubles, And, by opposing, end them. To die, to sleep- No more-and by a sleep to say we end The heartache and the thousand natural shocks That flesh is heir to-'tis a consummation Devoutly to be wished. To die, to sleep- To sleep, perchance to dream. Aye, there's the rub, For in that sleep of death what dreams may come, When we have shuffled off this mortal coil, Must give us pause. There's the respect That makes calamity of so long life. For who would bear the whips and scorns of time, Th' oppressor's wrong, the proud man's contumely, The pangs of despised love, the law’s delay, The insolence of office, and the spurns That patient merit of the unworthy takes, When he himself might his quietus make With a bare bodkin? Who would fardels bear, To grunt and sweat under a weary life, But that the dread of something after death, The undiscovered country from whose bourn No traveler returns, puzzles the will And makes us rather bear those ills we have Than fly to others that we know not of? Thus conscience does make cowards of us all, And thus the native hue of resolution Is sicklied o'er with the pale cast of thought, And enterprises of great pitch and moment, With this regard their currents turn awry, And lose the name of action.-Soft you now, The fair Ophelia.-Nymph, in thy orisons Be all my sins remembered ------------------------------------------------------ Running Test 7: Create and read back an Array Metadata SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_VARYING sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = TITLE Alias Name = TITLE Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_TIMESTAMP sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = DATED Alias Name = DATED Field Name = DATED Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_VARYING sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = NOTES Alias Name = NOTES Field Name = NOTES Scale = 0 Charset id = 4 Nullable Size = 256 SQLType =SQL_ARRAY sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = MYARRAY Alias Name = MYARRAY Field Name = MYARRAY Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_LONG Scale = 0 Charset id = 0 Size = 4 Table = TESTDATA Column = MYARRAY Dimensions = 1 Bounds: (0:16) SQLType =SQL_ARRAY sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = MYARRAY2 Alias Name = MYARRAY2 Field Name = MYARRAY2 Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_TIMESTAMP Scale = 0 Charset id = 0 Size = 8 Table = TESTDATA Column = MYARRAY2 Dimensions = 1 Bounds: (0:16) SQLType =SQL_ARRAY sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = MYARRAY3 Alias Name = MYARRAY3 Field Name = MYARRAY3 Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_INT64 Scale = -2 Charset id = 0 Size = 8 Table = TESTDATA Column = MYARRAY3 Dimensions = 1 Bounds: (0:16) SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_TIMESTAMP sub type = 0 Field Name = DATED Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_VARYING sub type = 0 Field Name = NOTES Scale = 0 Charset id = 4 Nullable Size = 256 Param Name = ROWID Param Name = TITLE Param Name = DATED Param Name = NOTES ROWID = 1 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) DATED = 2016/04/01 09:30:00.1000 NOTES = Écoute moi (Charset Id = 4 Codepage = 65001) MYARRAY = NULL MYARRAY2 = NULL MYARRAY3 = NULL SQL Params SQLType =SQL_ARRAY sub type = 0 Field Name = MYARRAY Scale = 0 Charset id = 0 Nullable Size = 8 SQL Params SQLType =SQL_ARRAY sub type = 0 Field Name = MYARRAY2 Scale = 0 Charset id = 0 Nullable Size = 8 SQL Params SQLType =SQL_ARRAY sub type = 0 Field Name = MYARRAY3 Scale = 0 Charset id = 0 Nullable Size = 8 Metadata SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_VARYING sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = TITLE Alias Name = TITLE Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_TIMESTAMP sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = DATED Alias Name = DATED Field Name = DATED Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_VARYING sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = NOTES Alias Name = NOTES Field Name = NOTES Scale = 0 Charset id = 4 Nullable Size = 256 SQLType =SQL_ARRAY sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = MYARRAY Alias Name = MYARRAY Field Name = MYARRAY Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_LONG Scale = 0 Charset id = 0 Size = 4 Table = TESTDATA Column = MYARRAY Dimensions = 1 Bounds: (0:16) SQLType =SQL_ARRAY sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = MYARRAY2 Alias Name = MYARRAY2 Field Name = MYARRAY2 Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_TIMESTAMP Scale = 0 Charset id = 0 Size = 8 Table = TESTDATA Column = MYARRAY2 Dimensions = 1 Bounds: (0:16) SQLType =SQL_ARRAY sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = MYARRAY3 Alias Name = MYARRAY3 Field Name = MYARRAY3 Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_INT64 Scale = -2 Charset id = 0 Size = 8 Table = TESTDATA Column = MYARRAY3 Dimensions = 1 Bounds: (0:16) ROWID = 1 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) DATED = 2016/04/01 09:30:00.1000 NOTES = Écoute moi (Charset Id = 4 Codepage = 65001) MYARRAY = Array: (0: 100) (1: 99) (2: 98) (3: 97) (4: 96) (5: 95) (6: 94) (7: 93) (8: 92) (9: 91) (10: 90) (11: 89) (12: 88) (13: 87) (14: 86) (15: 85) (16: 84) MYARRAY2 = Array: (0: 01/5/2020 12:00:00) (1: 01/5/2020 12:01:00) (2: 01/5/2020 12:02:00) (3: 01/5/2020 12:03:00) (4: 01/5/2020 12:04:00) (5: 01/5/2020 12:05:00) (6: 01/5/2020 12:06:00) (7: 01/5/2020 12:07:00) (8: 01/5/2020 12:08:00) (9: 01/5/2020 12:09:00) (10: 01/5/2020 12:10:00) (11: 01/5/2020 12:11:00) (12: 01/5/2020 12:12:00) (13: 01/5/2020 12:13:00) (14: 01/5/2020 12:14:00) (15: 01/5/2020 12:15:00) (16: 01/5/2020 12:16:00) MYARRAY3 = Array: (0: 0) (1: 1.04) (2: 2.09) (3: 3.15) (4: 4.19) (5: 5.25) (6: 6.3) (7: 7.34) (8: 8.39) (9: 9.44) (10: 10.5) (11: 11.55) (12: 12.6) (13: 13.64) (14: 14.69) (15: 15.75) (16: 16.79) Shrink to 2:10 Array: (2: 98) (3: 97) (4: 96) (5: 95) (6: 94) (7: 93) (8: 92) (9: 91) (10: 90) Write updated reduced slice Show update array ROWID = 1 TITLE = Blob Test ©€ (Charset Id = 4 Codepage = 65001) DATED = 2016/04/01 09:30:00.1000 NOTES = Écoute moi (Charset Id = 4 Codepage = 65001) MYARRAY = Array: (0: 100) (1: 99) (2: 1000) (3: 97) (4: 96) (5: 95) (6: 94) (7: 93) (8: 92) (9: 91) (10: 90) (11: 89) (12: 88) (13: 87) (14: 86) (15: 85) (16: 84) MYARRAY2 = Array: (0: 01/5/2020 12:00:00) (1: 01/5/2020 12:01:00) (2: 01/5/2020 12:02:00) (3: 01/5/2020 12:03:00) (4: 01/5/2020 12:04:00) (5: 01/5/2020 12:05:00) (6: 01/5/2020 12:06:00) (7: 01/5/2020 12:07:00) (8: 01/5/2020 12:08:00) (9: 01/5/2020 12:09:00) (10: 01/5/2020 12:10:00) (11: 01/5/2020 12:11:00) (12: 01/5/2020 12:12:00) (13: 01/5/2020 12:13:00) (14: 01/5/2020 12:14:00) (15: 01/5/2020 12:15:00) (16: 01/5/2020 12:16:00) MYARRAY3 = Array: (0: 0) (1: 1.04) (2: 2.09) (3: 3.15) (4: 4.19) (5: 5.25) (6: 6.3) (7: 7.34) (8: 8.39) (9: 9.44) (10: 10.5) (11: 11.55) (12: 12.6) (13: 13.64) (14: 14.69) (15: 15.75) (16: 16.79) ------------------------------------------------------ Running Test 8: Create and read back an Array with 2 dimensions Metadata SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_VARYING sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = TITLE Alias Name = TITLE Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_ARRAY sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = MYARRAY Alias Name = MYARRAY Field Name = MYARRAY Scale = 0 Charset id = 4 Nullable Size = 8 Array Meta Data: SQLType =SQL_VARYING Scale = 0 Charset id = 4 Size = 16 Table = TESTDATA Column = MYARRAY Dimensions = 2 Bounds: (0:16) (-1:7) SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 ROWID = 1 TITLE = 2D Array (Charset Id = 4 Codepage = 65001) MYARRAY = NULL ROWID = 1 TITLE = 2D Array (Charset Id = 4 Codepage = 65001) MYARRAY = Array: (0,-1: A50) (0,0: A51) (0,1: A52) (0,2: A53) (0,3: A54) (0,4: A55) (0,5: A56) (0,6: A57) (0,7: A58) (1,-1: A59) (1,0: A60) (1,1: A61) (1,2: A62) (1,3: A63) (1,4: A64) (1,5: A65) (1,6: A66) (1,7: A67) (2,-1: A68) (2,0: A69) (2,1: A70) (2,2: A71) (2,3: A72) (2,4: A73) (2,5: A74) (2,6: A75) (2,7: A76) (3,-1: A77) (3,0: A78) (3,1: A79) (3,2: A80) (3,3: A81) (3,4: A82) (3,5: A83) (3,6: A84) (3,7: A85) (4,-1: A86) (4,0: A87) (4,1: A88) (4,2: A89) (4,3: A90) (4,4: A91) (4,5: A92) (4,6: A93) (4,7: A94) (5,-1: A95) (5,0: A96) (5,1: A97) (5,2: A98) (5,3: A99) (5,4: A100) (5,5: A101) (5,6: A102) (5,7: A103) (6,-1: A104) (6,0: A105) (6,1: A106) (6,2: A107) (6,3: A108) (6,4: A109) (6,5: A110) (6,6: A111) (6,7: A112) (7,-1: A113) (7,0: A114) (7,1: A115) (7,2: A116) (7,3: A117) (7,4: A118) (7,5: A119) (7,6: A120) (7,7: A121) (8,-1: A122) (8,0: A123) (8,1: A124) (8,2: A125) (8,3: A126) (8,4: A127) (8,5: A128) (8,6: A129) (8,7: A130) (9,-1: A131) (9,0: A132) (9,1: A133) (9,2: A134) (9,3: A135) (9,4: A136) (9,5: A137) (9,6: A138) (9,7: A139) (10,-1: A140) (10,0: A141) (10,1: A142) (10,2: A143) (10,3: A144) (10,4: A145) (10,5: A146) (10,6: A147) (10,7: A148) (11,-1: A149) (11,0: A150) (11,1: A151) (11,2: A152) (11,3: A153) (11,4: A154) (11,5: A155) (11,6: A156) (11,7: A157) (12,-1: A158) (12,0: A159) (12,1: A160) (12,2: A161) (12,3: A162) (12,4: A163) (12,5: A164) (12,6: A165) (12,7: A166) (13,-1: A167) (13,0: A168) (13,1: A169) (13,2: A170) (13,3: A171) (13,4: A172) (13,5: A173) (13,6: A174) (13,7: A175) (14,-1: A176) (14,0: A177) (14,1: A178) (14,2: A179) (14,3: A180) (14,4: A181) (14,5: A182) (14,6: A183) (14,7: A184) (15,-1: A185) (15,0: A186) (15,1: A187) (15,2: A188) (15,3: A189) (15,4: A190) (15,5: A191) (15,6: A192) (15,7: A193) (16,-1: A194) (16,0: A195) (16,1: A196) (16,2: A197) (16,3: A198) (16,4: A199) (16,5: A200) (16,6: A201) (16,7: A202) ------------------------------------------------------ Running Test 9: Database Information tests Database ID = 4 FB = /opt/firebird4.0.0/examples/empbuild/employee.fdb SN = zeus Pages =1075 Base Level = 13,4,0,3, Implementation = 11,7,0,3,66,1,66, Reserved = 0 ODS minor = 0 ODS major = 13 Page Size = 8192 Version = 1: LI-V6.3.0.2496 Firebird 4.0 Database is Read/Write Database Created: 29/5/2021 16:47:30 Pages Used = 313 Pages Free = 762 Server Memory = 19483648 Forced Writes = 1 Max Memory = 19629664 Num Buffers = 2048 Sweep Interval = 20000 Logged in Users: SYSDBA, Active Transaction Count = 0 Fetches = 1648 Writes = 8 Reads = 92 Page Writes = 4 Record Version Removals Operation Counts Deletes Operation Counts Expunge Count Operation Counts Insert Count Operation Counts Purge Count Countites Operation Counts Indexed Reads Count Operation Counts Table ID = 4 Count = 63 Table ID = 6 Count = 23 Table ID = 9 Count = 3 Table ID = 11 Count = 2 Table ID = 12 Count = 24 Table ID = 18 Count = 816 Table ID = 20 Count = 5 Table ID = 28 Count = 2 Table ID = 29 Count = 2 Table ID = 31 Count = 1 Sequential Table Scans Operation Counts Table ID = 0 Count = 100 Table ID = 1 Count = 24 Update Count Operation Counts Page Size = 8192 ------------------------------------------------------ Running Test 10: Event Handling Call Async Wait Async Wait Called Event Signalled First Event - usually ignored Signal Event Event Counts: TESTEVENT, Count = 1 Two more events Call Async Wait Async Wait Called Event Signalled Event Signalled Deferred Events Caught Event Counts: TESTEVENT, Count = 2 Signal Event Event Counts: TESTEVENT, Count = 1 Async Wait: Test Cancel Event Signalled Async Wait Called Event Cancelled Time Out - Cancel Worked! Sync wait Event Signalled Event Counts: TESTEVENT, Count = 1 ------------------------------------------------------ Running Test 11: Services API SPB: Item Count = 2 user_name = SYSDBA password = masterkey Service Manager Version = 2 Server Version = LI-V4.0.0.2496 Firebird 4.0 Implementation = Firebird/Linux/AMD/Intel/x64 Lock Directory = /tmp/firebird/ Message File = /opt/firebird4.0.0/ Security File = /opt/firebird4.0.0/security4.fdb DB Attachments No. of Attachments = 0 Databases In Use = 0 Sec. Database User User Name = SYSDBA First Name = Middle Name = Last Name = User ID = 0 Group ID = 0 Licence Info: feature is not supported -feature is not supported Licence Mask Info: feature is not supported Capabilities = 6 Get Limbo transactions Limbo Transactions Local Backup Local Backup Complete Local Restore Local Restore Complete Open Database Check Database OK Database Dropped ------------------------------------------------------ Running Test 12: Character Sets SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 0 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 SQLType =SQL_VARYING sub type = 0 Field Name = NOTES Scale = 0 Charset id = 4 Nullable Size = 256 SQLType =SQL_BLOB sub type = 1 Field Name = BLOBDATA Scale = 0 Charset id = 4 Nullable Size = 8 SQLType =SQL_BLOB sub type = 1 Field Name = BLOBDATA2 Scale = 0 Charset id = 4 Nullable Size = 8 SQLType =SQL_VARYING sub type = 0 Field Name = INCLEAR Scale = 0 Charset id = 1 Nullable Size = 16 SQLType =SQL_TEXT sub type = 0 Field Name = FIXEDWIDTH Scale = 0 Charset id = 4 Nullable Size = 16 Show Param Values SQL Params SQLType =SQL_LONG sub type = 0 Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 Value = 1 SQLType =SQL_VARYING sub type = 0 Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 Value = Blob Test ©€ SQLType =SQL_VARYING sub type = 0 Field Name = NOTES Scale = 0 Charset id = 4 Nullable Size = 256 Value = Écoute moi SQLType =SQL_VARYING sub type = 1 Field Name = BLOBDATA Scale = 0 Charset id = 4 Nullable Size = 8192 Value = Some German Special Characters like ÖÄÜöäüß SQLType =SQL_BLOB sub type = 1 Field Name = BLOBDATA2 Scale = 0 Charset id = 4 Nullable Size = 8 Value = Some German Special Characters like ÖÄÜöäüß SQLType =SQL_VARYING sub type = 0 Field Name = INCLEAR Scale = 0 Charset id = 1 Nullable Size = 16 Value = Test à SQLType =SQL_VARYING sub type = 0 Field Name = FIXEDWIDTH Scale = 0 Charset id = 4 Nullable Size = 16 Value = É Connection Character Set UTF8 ROWID = 1 TITLE = 42 6C 6F 62 20 54 65 73 74 20 C2 A9 E2 82 AC (Charset Id = 4 Codepage = 65001) NOTES = C3 89 63 6F 75 74 65 20 6D 6F 69 (Charset Id = 4 Codepage = 65001) BLOBDATA = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) BLOBDATA2 = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) INCLEAR = 1 54 65 73 74 D C3 (Charset Id = 1 Codepage = 65535) FIXEDWIDTH = C3 89 (Charset Id = 4 Codepage = 65001) Connection Character Set NONE ROWID = 1 TITLE = 42 6C 6F 62 20 54 65 73 74 20 C2 A9 E2 82 AC (Charset Id = 4 Codepage = 65001) NOTES = C9 63 6F 75 74 65 20 6D 6F 69 (Charset Id = 21 Codepage = 28591) BLOBDATA = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 D6 C4 DC F6 E4 FC DF (Charset Id = 53 Codepage = 1252) BLOBDATA2 = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) INCLEAR = 1 54 65 73 74 D C3 (Charset Id = 1 Codepage = 65535) FIXEDWIDTH = C3 89 (Charset Id = 4 Codepage = 65001) Connection Character Set WIN1252 ROWID = 1 TITLE = 42 6C 6F 62 20 54 65 73 74 20 A9 80 (Charset Id = 53 Codepage = 1252) NOTES = C9 63 6F 75 74 65 20 6D 6F 69 (Charset Id = 53 Codepage = 1252) BLOBDATA = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 D6 C4 DC F6 E4 FC DF (Charset Id = 53 Codepage = 1252) BLOBDATA2 = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 D6 C4 DC F6 E4 FC DF (Charset Id = 53 Codepage = 1252) INCLEAR = 1 54 65 73 74 D C3 (Charset Id = 1 Codepage = 65535) FIXEDWIDTH = C9 (Charset Id = 53 Codepage = 1252) ------------------------------------------------------ Running Test 13: Transaction over two databases Init Database 1 ROWID = 1 TITLE = 42 6C 6F 62 20 54 65 73 74 20 C2 A9 E2 82 AC (Charset Id = 4 Codepage = 65001) NOTES = C3 89 63 6F 75 74 65 20 6D 6F 69 (Charset Id = 4 Codepage = 65001) BLOBDATA = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) BLOBDATA2 = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) INCLEAR = 1 54 65 73 74 D C3 (Charset Id = 1 Codepage = 65535) Init Database 2 ROWID = 1 TITLE = 42 6C 6F 62 20 54 65 73 74 20 C2 A9 E2 82 AC (Charset Id = 4 Codepage = 65001) NOTES = C3 89 63 6F 75 74 65 20 6D 6F 69 (Charset Id = 4 Codepage = 65001) BLOBDATA = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) BLOBDATA2 = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) INCLEAR = 1 54 65 73 74 D C3 (Charset Id = 1 Codepage = 65535) ROWID = 1 TITLE = 44 61 74 61 62 61 73 65 31 (Charset Id = 4 Codepage = 65001) NOTES = C3 89 63 6F 75 74 65 20 6D 6F 69 (Charset Id = 4 Codepage = 65001) BLOBDATA = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) BLOBDATA2 = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) INCLEAR = 1 54 65 73 74 D C3 (Charset Id = 1 Codepage = 65535) ROWID = 1 TITLE = 44 61 74 61 62 61 73 65 32 (Charset Id = 4 Codepage = 65001) NOTES = C3 89 63 6F 75 74 65 20 6D 6F 69 (Charset Id = 4 Codepage = 65001) BLOBDATA = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) BLOBDATA2 = 53 6F 6D 65 20 47 65 72 6D 61 6E 20 53 70 65 63 69 61 6C 20 43 68 61 72 61 63 74 65 72 73 20 6C 69 6B 65 20 C3 96 C3 84 C3 9C C3 B6 C3 A4 C3 BC C3 9F (Charset Id = 4 Codepage = 65001) INCLEAR = 1 54 65 73 74 D C3 (Charset Id = 1 Codepage = 65535) ------------------------------------------------------ Running Test 14: Non select procedures Default Character set Name = UTF8 Metadata SQLType =SQL_LONG sub type = 0 Table = SHOWDATA Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Nullable Size = 4 SQLType =SQL_VARYING sub type = 0 Table = SHOWDATA Owner = SYSDBA Column Name = TITLE Alias Name = TITLE Field Name = TITLE Scale = 0 Charset id = 4 Nullable Size = 128 ROWID = 1 TITLE = Testing (Charset Id = 4 Codepage = 65001) Repeat with a different execute transaction ROWID = 1 TITLE = Testing (Charset Id = 4 Codepage = 65001) Repeat with a original transaction ROWID = 1 TITLE = Testing (Charset Id = 4 Codepage = 65001) ------------------------------------------------------ Running Test 15: Blob Handling and BPBs Testdata ROWID = 1 TITLE = Blob Test (Charset Id = 4 Codepage = 65001) BLOBDATA = (blob), Length = 92514 ROWID = 2 TITLE = Blob Test with binary string (Charset Id = 4 Codepage = 65001) BLOBDATA = (blob), Length = 13 0 9 A C9 63 6F 75 74 65 20 6D 6F 69 Testdata 2 ROWID = 1 TITLE = Blob Test (Charset Id = 4 Codepage = 65001) BLOBDATA (Charset Id = 4 Codepage = 65001) Écoute moi ------------------------------------------------------ Running Test 16: Error handling Invalid Database Name Test Error Handled: I/O error during "open" operation for file "Malformed Name" -Error while trying to open file -No such file or directory Invalid User Name Test Error Handled: Your user name and password are not defined. Ask your database administrator to set up a Firebird login Invalid password Test Error Handled: Your user name and password are not defined. Ask your database administrator to set up a Firebird login Invalid Prepare SQL Test Error Handled: Dynamic SQL Error -SQL error code = -206 -Column unknown -UNKNOWN_DATE -At line 1, column 21 When Executing: Update Employee Set Unknown_Date = ? Where EMP_NO = ? Invalid Open Cursor SQL Test Error Handled: Dynamic SQL Error -SQL error code = -206 -Column unknown -X -At line 1, column 8 When Executing: Select X,count(*) As Counter from EMPLOYEE Transaction not started Test Error Handled: Transaction is not active Invalid Param SQL Type Test Error Handled: Field "EMP_NO" not found Case sensitive Param SQL Test Error Handled: Field "EMP_NO" not found Invalid Server Name Test Error Handled: Unable to complete network request to host "unknown". -Failed to locate host machine. -The specified name was not found in the hosts file or Domain Name Services Invalid User Name Test Error Handled: Your user name and password are not defined. Ask your database administrator to set up a Firebird login Invalid password Test Error Handled: Your user name and password are not defined. Ask your database administrator to set up a Firebird login ------------------------------------------------------ Running Test 17: Date/Time tests and Firebird 4 extensions FBVersion = Firebird/Linux/AMD/Intel/x64 (access method), version "LI-V4.0.0.2496 Firebird 4.0" Has Local TZ DB = TRUE Testdata Metadata SQLType =SQL_LONG sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_TYPE_DATE sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = DATECOL Alias Name = DATECOL Field Name = DATECOL Scale = 0 Charset id = 0 Nullable Size = 4 SQLType =SQL_TYPE_TIME sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = TIMECOL Alias Name = TIMECOL Field Name = TIMECOL Scale = 0 Charset id = 0 Nullable Size = 4 SQLType =SQL_TIMESTAMP sub type = 0 Table = TESTDATA Owner = SYSDBA Column Name = TIMESTAMPCOL Alias Name = TIMESTAMPCOL Field Name = TIMESTAMPCOL Scale = 0 Charset id = 0 Nullable Size = 8 ROWID = 1 DATECOL = 2019/04/01 TIMECOL = 11:31:05.0001 TIMESTAMPCOL = 2016/02/29 22:02:35.0001 ROWID = 2 DATECOL = 1939/09/03 TIMECOL = 15:40:00.0002 TIMESTAMPCOL = 1918/11/11 11:11:00.0000 ROWID = 3 DATECOL = 1066/10/14 TIMECOL = 23:59:59.9994 TIMESTAMPCOL = 1918/11/11 11:11:00.0000 ROWID = 4 DATECOL = 1815/06/18 TIMECOL = 00:01:40.1115 TIMESTAMPCOL = 1945/05/08 22:10:00.0010 Testdata - second pass 1, 01/4/2019, 11:31:05, 29/2/2016 22:02:35 2, 03/9/1939, 15:40:00.000, 11/11/1918 11:11:00 3, 14/10/1066, 23:59:59.999, 11/11/1918 11:11:00 4, 18/6/1815, 00:01:40.112, 08/5/1945 22:10:00 Sys Time = 1945, 5, 8, 2, 22, 10, 0, 1 Firebird 4 extension types ========================== Using local FB Client with server TZ database Local Time Zone Name = Europe/London, ID = 65071 Test Time Zone Setting Time Zone GMT = GMT Time Zone Zagreb = Europe/Zagreb Time Zone Offset -08:00 = -08:00 Time Zone Offset +13:39 = +13:39 Time Zone ID = 1799 Time Zone ID = 959, UTC Time = 23/1/2020 10:30:00 Time Zone ID = 64920 Local Time Zone ID = 65071 Local Time = 22/1/2020 18:30:00, Time Zone = -08:00 Time Zone Offset = 60 Time Zone Offset = 60 Time Zone Offset = 60 Time Zone Offset = 0 Time Zone Offset = 60 Time Zone Offset = Bad Timestamp or missing time zone DB entry (26/3/1989 01:30:00) TZ ID = 65071 Date = 29/11/1969 23:30:00, TimeZone = GMT Date = 01/4/2001 22:30:10.0010, TimeZone = -08:00 Time = 23:59:10.2000, TimeZone = Europe/London Show Parameter 2 = AsString = 11/11/1918 00:11:00.0000 +04:00 Formatted = 1918/11/11 00:11:00.0000 +04:00 TimeZoneID = 1679 Time Zone Name = +04:00 UTC Time = 10/11/1918 20:11:00 DST Offset = 240 FB4 Testdata_TZ Metadata SQLType =SQL_LONG sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_TIME_TZ sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = TIMECOL Alias Name = TIMECOL Field Name = TIMECOL Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_TIMESTAMP_TZ sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = TIMESTAMPCOL Alias Name = TIMESTAMPCOL Field Name = TIMESTAMPCOL Scale = 0 Charset id = 0 Nullable Size = 12 SQLType =SQL_SHORT sub type = 0 Table = Owner = Column Name = EXTRACT Alias Name = TZ_HOUR Field Name = TZ_HOUR Scale = 0 Charset id = 0 Nullable Size = 2 SQLType =SQL_SHORT sub type = 0 Table = Owner = Column Name = EXTRACT Alias Name = TZ_MINUTE Field Name = TZ_MINUTE Scale = 0 Charset id = 0 Nullable Size = 2 ROWID = 1 TIMECOL = AsString = 11:32:10.0002 -05:00 Formatted = 11:32:10.0002 -05:00 TimeZoneID = 1139 Time Zone Name = -05:00 UTC Time = 16:32:10 DST Offset = -300 TIMESTAMPCOL = AsString = 01/4/2020 11:31:05.0001 +01:00 Formatted = 2020/04/01 11:31:05.0001 +01:00 TimeZoneID = 1499 Time Zone Name = +01:00 UTC Time = 01/4/2020 10:31:05 DST Offset = 60 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 2 TIMECOL = AsString = 14:02:10.0050 -08:00 Formatted = 14:02:10.0050 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 22:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 11:11:00.0000 00:00 Formatted = 1918/11/11 11:11:00.0000 Europe/London TimeZoneID = 65071 Time Zone Name = Europe/London UTC Time = 11/11/1918 11:11:00 DST Offset = 0 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 3 TIMECOL = AsString = 22:02:10.0050 -08:00 Formatted = 22:02:10.0050 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 06:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 00:11:00.0000 +04:00 Formatted = 1918/11/11 00:11:00.0000 +04:00 TimeZoneID = 1679 Time Zone Name = +04:00 UTC Time = 10/11/1918 20:11:00 DST Offset = 240 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 4 TIMECOL = AsString = 14:02:10.5000 -08:00 Formatted = 14:02:10.5000 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 22:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 11:11:00.0000 00:00 Formatted = 1918/11/11 11:11:00.0000 Europe/London TimeZoneID = 65071 Time Zone Name = Europe/London UTC Time = 11/11/1918 11:11:00 DST Offset = 0 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 5 TIMECOL = AsString = 11:31:05.0001 -05:00 Formatted = 11:31:05.0001 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 16:31:05 DST Offset = -300 TIMESTAMPCOL = AsString = 04/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/04 07:00:00.0000 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 04/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 6 TIMECOL = AsString = 11:31:05.0001 -05:00 Formatted = 11:31:05.0001 EST5EDT TimeZoneID = 65135 Time Zone Name = EST5EDT UTC Time = 16:31:05 DST Offset = -300 TIMESTAMPCOL = AsString = 01/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/01 07:00:00.0000 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 01/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 7 TIMECOL = AsString = 11:31:05.0001 +06:00 Formatted = 11:31:05.0001 BST TimeZoneID = 65162 Time Zone Name = BST UTC Time = 05:31:05 DST Offset = 360 TIMESTAMPCOL = AsString = 01/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/01 07:00:00.0000 EST5EDT TimeZoneID = 65135 Time Zone Name = EST5EDT UTC Time = 01/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = 6 TZ_MINUTE = 0 ROWID = 8 TIMECOL = AsString = 11:31:05.0001 +01:00 Formatted = 11:31:05.0001 Europe/Paris TimeZoneID = 65061 Time Zone Name = Europe/Paris UTC Time = 10:31:05 DST Offset = 60 TIMESTAMPCOL = AsString = 01/7/2020 06:00:00.0000 -05:00 Formatted = 2020/07/01 06:00:00.0000 EST TimeZoneID = 65136 Time Zone Name = EST UTC Time = 01/7/2020 11:00:00 DST Offset = -300 TZ_HOUR = 1 TZ_MINUTE = 0 Using local TZ database Test Time Zone Setting Time Zone GMT = GMT Time Zone Zagreb = Europe/Zagreb Time Zone Offset -08:00 = -08:00 Time Zone Offset +13:39 = +13:39 Time Zone ID = 1799 Time Zone ID = 959, UTC Time = 23/1/2020 10:30:00 Time Zone ID = 64920 Local Time Zone ID = 65071 Local Time = 23/1/2020 10:30:00, Time Zone = -08:00 Time Zone Offset = 60 Time Zone Offset = 60 Time Zone Offset = 60 Time Zone Offset = 0 Time Zone Offset = 60 Time Zone Offset = 0 Date = 29/11/1969 23:30:00, TimeZone = GMT Date = 01/4/2001 22:30:10.0010, TimeZone = -08:00 Time = 23:59:10.2000, TimeZone = Europe/London Show Parameter 2 = AsString = 11/11/1918 00:11:00.0000 +04:00 Formatted = 1918/11/11 00:11:00.0000 +04:00 TimeZoneID = 1679 Time Zone Name = +04:00 UTC Time = 10/11/1918 20:11:00 DST Offset = 240 FB4 Testdata_TZ Metadata SQLType =SQL_LONG sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_TIME_TZ sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = TIMECOL Alias Name = TIMECOL Field Name = TIMECOL Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_TIMESTAMP_TZ sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = TIMESTAMPCOL Alias Name = TIMESTAMPCOL Field Name = TIMESTAMPCOL Scale = 0 Charset id = 0 Nullable Size = 12 SQLType =SQL_SHORT sub type = 0 Table = Owner = Column Name = EXTRACT Alias Name = TZ_HOUR Field Name = TZ_HOUR Scale = 0 Charset id = 0 Nullable Size = 2 SQLType =SQL_SHORT sub type = 0 Table = Owner = Column Name = EXTRACT Alias Name = TZ_MINUTE Field Name = TZ_MINUTE Scale = 0 Charset id = 0 Nullable Size = 2 ROWID = 1 TIMECOL = AsString = 11:32:10.0002 -05:00 Formatted = 11:32:10.0002 -05:00 TimeZoneID = 1139 Time Zone Name = -05:00 UTC Time = 16:32:10 DST Offset = -300 TIMESTAMPCOL = AsString = 01/4/2020 11:31:05.0001 +01:00 Formatted = 2020/04/01 11:31:05.0001 +01:00 TimeZoneID = 1499 Time Zone Name = +01:00 UTC Time = 01/4/2020 10:31:05 DST Offset = 60 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 2 TIMECOL = AsString = 14:02:10.0050 -08:00 Formatted = 14:02:10.0050 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 22:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 11:11:00.0000 00:00 Formatted = 1918/11/11 11:11:00.0000 Europe/London TimeZoneID = 65071 Time Zone Name = Europe/London UTC Time = 11/11/1918 11:11:00 DST Offset = 0 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 3 TIMECOL = AsString = 22:02:10.0050 -08:00 Formatted = 22:02:10.0050 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 06:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 00:11:00.0000 +04:00 Formatted = 1918/11/11 00:11:00.0000 +04:00 TimeZoneID = 1679 Time Zone Name = +04:00 UTC Time = 10/11/1918 20:11:00 DST Offset = 240 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 4 TIMECOL = AsString = 14:02:10.5000 -08:00 Formatted = 14:02:10.5000 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 22:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 11:11:00.0000 00:00 Formatted = 1918/11/11 11:11:00.0000 Europe/London TimeZoneID = 65071 Time Zone Name = Europe/London UTC Time = 11/11/1918 11:11:00 DST Offset = 0 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 5 TIMECOL = AsString = 11:31:05.0001 -05:00 Formatted = 11:31:05.0001 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 16:31:05 DST Offset = -300 TIMESTAMPCOL = AsString = 04/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/04 07:00:00.0000 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 04/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 6 TIMECOL = AsString = 11:31:05.0001 -05:00 Formatted = 11:31:05.0001 EST5EDT TimeZoneID = 65135 Time Zone Name = EST5EDT UTC Time = 16:31:05 DST Offset = -300 TIMESTAMPCOL = AsString = 01/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/01 07:00:00.0000 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 01/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 7 TIMECOL = AsString = 11:31:05.0001 +06:00 Formatted = 11:31:05.0001 BST TimeZoneID = 65162 Time Zone Name = BST UTC Time = 05:31:05 DST Offset = 360 TIMESTAMPCOL = AsString = 01/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/01 07:00:00.0000 EST5EDT TimeZoneID = 65135 Time Zone Name = EST5EDT UTC Time = 01/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = 6 TZ_MINUTE = 0 ROWID = 8 TIMECOL = AsString = 11:31:05.0001 +01:00 Formatted = 11:31:05.0001 Europe/Paris TimeZoneID = 65061 Time Zone Name = Europe/Paris UTC Time = 10:31:05 DST Offset = 60 TIMESTAMPCOL = AsString = 01/7/2020 06:00:00.0000 -05:00 Formatted = 2020/07/01 06:00:00.0000 EST TimeZoneID = 65136 Time Zone Name = EST UTC Time = 01/7/2020 11:00:00 DST Offset = -300 TZ_HOUR = 1 TZ_MINUTE = 0 Using Extended TZ Data Type Show Parameter 2 = AsString = 11/11/1918 00:11:00.0000 +04:00 Formatted = 1918/11/11 00:11:00.0000 +04:00 TimeZoneID = 1679 Time Zone Name = +04:00 UTC Time = 10/11/1918 20:11:00 DST Offset = 240 FB4 Testdata_TZ Metadata SQLType =SQL_LONG sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_TIME_TZ_EX sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = TIMECOL Alias Name = TIMECOL Field Name = TIMECOL Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_TIMESTAMP_TZ_EX sub type = 0 Table = FB4TESTDATA_TZ Owner = SYSDBA Column Name = TIMESTAMPCOL Alias Name = TIMESTAMPCOL Field Name = TIMESTAMPCOL Scale = 0 Charset id = 0 Nullable Size = 12 SQLType =SQL_SHORT sub type = 0 Table = Owner = Column Name = EXTRACT Alias Name = TZ_HOUR Field Name = TZ_HOUR Scale = 0 Charset id = 0 Nullable Size = 2 SQLType =SQL_SHORT sub type = 0 Table = Owner = Column Name = EXTRACT Alias Name = TZ_MINUTE Field Name = TZ_MINUTE Scale = 0 Charset id = 0 Nullable Size = 2 ROWID = 1 TIMECOL = AsString = 11:32:10.0002 -05:00 Formatted = 11:32:10.0002 -05:00 TimeZoneID = 1139 Time Zone Name = -05:00 UTC Time = 16:32:10 DST Offset = -300 TIMESTAMPCOL = AsString = 01/4/2020 11:31:05.0001 +01:00 Formatted = 2020/04/01 11:31:05.0001 +01:00 TimeZoneID = 1499 Time Zone Name = +01:00 UTC Time = 01/4/2020 10:31:05 DST Offset = 60 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 2 TIMECOL = AsString = 14:02:10.0050 -08:00 Formatted = 14:02:10.0050 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 22:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 11:11:00.0000 00:00 Formatted = 1918/11/11 11:11:00.0000 Europe/London TimeZoneID = 65071 Time Zone Name = Europe/London UTC Time = 11/11/1918 11:11:00 DST Offset = 0 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 3 TIMECOL = AsString = 22:02:10.0050 -08:00 Formatted = 22:02:10.0050 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 06:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 00:11:00.0000 +04:00 Formatted = 1918/11/11 00:11:00.0000 +04:00 TimeZoneID = 1679 Time Zone Name = +04:00 UTC Time = 10/11/1918 20:11:00 DST Offset = 240 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 4 TIMECOL = AsString = 14:02:10.5000 -08:00 Formatted = 14:02:10.5000 -08:00 TimeZoneID = 959 Time Zone Name = -08:00 UTC Time = 22:02:10 DST Offset = -480 TIMESTAMPCOL = AsString = 11/11/1918 11:11:00.0000 00:00 Formatted = 1918/11/11 11:11:00.0000 Europe/London TimeZoneID = 65071 Time Zone Name = Europe/London UTC Time = 11/11/1918 11:11:00 DST Offset = 0 TZ_HOUR = -8 TZ_MINUTE = 0 ROWID = 5 TIMECOL = AsString = 11:31:05.0001 -05:00 Formatted = 11:31:05.0001 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 16:31:05 DST Offset = -300 TIMESTAMPCOL = AsString = 04/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/04 07:00:00.0000 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 04/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 6 TIMECOL = AsString = 11:31:05.0001 -05:00 Formatted = 11:31:05.0001 EST5EDT TimeZoneID = 65135 Time Zone Name = EST5EDT UTC Time = 16:31:05 DST Offset = -300 TIMESTAMPCOL = AsString = 01/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/01 07:00:00.0000 America/New_York TimeZoneID = 65361 Time Zone Name = America/New_York UTC Time = 01/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = -5 TZ_MINUTE = 0 ROWID = 7 TIMECOL = AsString = 11:31:05.0001 +06:00 Formatted = 11:31:05.0001 BST TimeZoneID = 65162 Time Zone Name = BST UTC Time = 05:31:05 DST Offset = 360 TIMESTAMPCOL = AsString = 01/7/2020 07:00:00.0000 -04:00 Formatted = 2020/07/01 07:00:00.0000 EST5EDT TimeZoneID = 65135 Time Zone Name = EST5EDT UTC Time = 01/7/2020 11:00:00 DST Offset = -240 TZ_HOUR = 6 TZ_MINUTE = 0 ROWID = 8 TIMECOL = AsString = 11:31:05.0001 +01:00 Formatted = 11:31:05.0001 Europe/Paris TimeZoneID = 65061 Time Zone Name = Europe/Paris UTC Time = 10:31:05 DST Offset = 60 TIMESTAMPCOL = AsString = 01/7/2020 06:00:00.0000 -05:00 Formatted = 2020/07/01 06:00:00.0000 EST TimeZoneID = 65136 Time Zone Name = EST UTC Time = 01/7/2020 11:00:00 DST Offset = -300 TZ_HOUR = 1 TZ_MINUTE = 0 ------------------------------------------------------ Running Test 18: Firebird 4 Decfloat extensions FBVersion = Firebird/Linux/AMD/Intel/x64 (access method), version "LI-V4.0.0.2496 Firebird 4.0" FB4 Testdata_DECFloat Metadata SQLType =SQL_LONG sub type = 0 Table = FB4TESTDATA_DECFLOAT Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_DEC16 sub type = 0 Table = FB4TESTDATA_DECFLOAT Owner = SYSDBA Column Name = FLOAT16 Alias Name = FLOAT16 Field Name = FLOAT16 Scale = 0 Charset id = 0 Nullable Size = 8 SQLType =SQL_DEC34 sub type = 0 Table = FB4TESTDATA_DECFLOAT Owner = SYSDBA Column Name = FLOAT34 Alias Name = FLOAT34 Field Name = FLOAT34 Scale = 0 Charset id = 0 Nullable Size = 16 SQLType =SQL_INT128 sub type = 0 Table = FB4TESTDATA_DECFLOAT Owner = SYSDBA Column Name = BIGNUMBER Alias Name = BIGNUMBER Field Name = BIGNUMBER Scale = -6 Charset id = 0 Nullable Size = 16 SQLType =SQL_INT128 sub type = 0 Table = FB4TESTDATA_DECFLOAT Owner = SYSDBA Column Name = BIGGERNUMBER Alias Name = BIGGERNUMBER Field Name = BIGGERNUMBER Scale = -4 Charset id = 0 Nullable Size = 16 SQLType =SQL_INT128 sub type = 0 Table = FB4TESTDATA_DECFLOAT Owner = SYSDBA Column Name = BIGINTEGER Alias Name = BIGINTEGER Field Name = BIGINTEGER Scale = 0 Charset id = 0 Nullable Size = 16 RowID = 1 Float16 = 64000000000.01 Precision = 13 Sign = 0 Special = 0 Places = 2 Digits = 64 00 00 00 00 00 10 Float34 = 123456789123456789.12345678 Precision = 26 Sign = 0 Special = 0 Places = 8 Digits = 12 34 56 78 91 23 45 67 89 12 34 56 78 BigNumber = 123456123456.123456 Precision = 18 Sign = 0 Special = 0 Places = 6 Digits = 12 34 56 12 34 56 12 34 56 BigInteger = 123456789123456789 Precision = 18 Sign = 0 Special = 0 Places = 0 Digits = 12 34 56 78 91 23 45 67 89 RowID = 2 Float16 = -64000000000.01 Precision = 13 Sign = 1 Special = 0 Places = 2 Digits = 64 00 00 00 00 00 10 Float34 = -123456789123456789.12345678 Precision = 26 Sign = 1 Special = 0 Places = 8 Digits = 12 34 56 78 91 23 45 67 89 12 34 56 78 BigNumber = -123456123456.123456 Precision = 18 Sign = 1 Special = 0 Places = 6 Digits = 12 34 56 12 34 56 12 34 56 BigInteger = Null RowID = 3 Float16 = 64100000000.011 Precision = 14 Sign = 0 Special = 0 Places = 3 Digits = 64 10 00 00 00 00 11 Float34 = 12345678912.1200 Precision = 15 Sign = 0 Special = 0 Places = 4 Digits = 12 34 56 78 91 21 20 00 BigNumber = 1234561234567.123456 Precision = 19 Sign = 0 Special = 0 Places = 6 Digits = 12 34 56 12 34 56 71 23 45 60 BiggerNumber = 11123456123456123456123456123456.1235 Precision = 36 Sign = 0 Special = 0 Places = 4 Digits = 11 12 34 56 12 34 56 12 34 56 12 34 56 12 34 56 12 35 BigInteger = Null RowID = 4 Float16 = 0 Precision = 0 Sign = 0 Special = 0 Places = 0 Digits = Float34 = -1 Precision = 1 Sign = 1 Special = 0 Places = 0 Digits = 10 BigNumber = 0.000000 Precision = 0 Sign = 0 Special = 0 Places = 0 Digits = BiggerNumber = 0.0000 Precision = 0 Sign = 0 Special = 0 Places = 0 Digits = BigInteger = Null Metadata SQLType =SQL_LONG sub type = 0 Table = FB4TESTDATA_DECFLOAT_AR Owner = SYSDBA Column Name = ROWID Alias Name = ROWID Field Name = ROWID Scale = 0 Charset id = 0 Not Null Size = 4 SQLType =SQL_ARRAY sub type = 0 Table = FB4TESTDATA_DECFLOAT_AR Owner = SYSDBA Column Name = FLOAT16 Alias Name = FLOAT16 Field Name = FLOAT16 Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_DEC16 Scale = 0 Charset id = 0 Size = 8 Table = FB4TESTDATA_DECFLOAT_AR Column = FLOAT16 Dimensions = 1 Bounds: (0:16) SQLType =SQL_ARRAY sub type = 0 Table = FB4TESTDATA_DECFLOAT_AR Owner = SYSDBA Column Name = FLOAT34 Alias Name = FLOAT34 Field Name = FLOAT34 Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_DEC34 Scale = 0 Charset id = 0 Size = 16 Table = FB4TESTDATA_DECFLOAT_AR Column = FLOAT34 Dimensions = 1 Bounds: (0:16) SQLType =SQL_ARRAY sub type = 0 Table = FB4TESTDATA_DECFLOAT_AR Owner = SYSDBA Column Name = BIGNUMBER Alias Name = BIGNUMBER Field Name = BIGNUMBER Scale = 0 Charset id = 0 Nullable Size = 8 Array Meta Data: SQLType =SQL_INT128 Scale = -6 Charset id = 0 Size = 16 Table = FB4TESTDATA_DECFLOAT_AR Column = BIGNUMBER Dimensions = 1 Bounds: (0:16) Decfloat Arrays Row No 1 Float16 Array: (0: 64100000000.011) (1: 64100000001.011) (2: 64100000002.011) (3: 64100000003.011) (4: 64100000004.011) (5: 64100000005.011) (6: 64100000006.011) (7: 64100000007.011) (8: 64100000008.011) (9: 64100000009.011) (10: 64100000010.011) (11: 64100000011.011) (12: 64100000012.011) (13: 64100000013.011) (14: 64100000014.011) (15: 64100000015.011) (16: 64100000016.011) Float34 Array: (0: 123456789123456789.12345678) (1: 123456789123456790.12345678) (2: 123456789123456791.12345678) (3: 123456789123456792.12345678) (4: 123456789123456793.12345678) (5: 123456789123456794.12345678) (6: 123456789123456795.12345678) (7: 123456789123456796.12345678) (8: 123456789123456797.12345678) (9: 123456789123456798.12345678) (10: 123456789123456799.12345678) (11: 123456789123456800.12345678) (12: 123456789123456801.12345678) (13: 123456789123456802.12345678) (14: 123456789123456803.12345678) (15: 123456789123456804.12345678) (16: 123456789123456805.12345678) BigNumber Array: (0: 123456123400.123456) (1: 123456123401.623456) (2: 123456123403.123456) (3: 123456123404.623456) (4: 123456123406.123456) (5: 123456123407.623456) (6: 123456123409.123456) (7: 123456123410.623456) (8: 123456123412.123456) (9: 123456123413.623456) (10: 123456123415.123456) (11: 123456123416.623456) (12: 123456123418.123456) (13: 123456123419.623456) (14: 123456123421.123456) (15: 123456123422.623456) (16: 123456123424.123456) ------------------------------------------------------ Running Test 19: Batch Update and Insert Queries Opening inet://localhost/employee Database Open Firebird/Linux/AMD/Intel/x64 (access method), version "LI-V4.0.0.2496 Firebird 4.0" Firebird/Linux/AMD/Intel/x64 (remote server), version "LI-V4.0.0.2496 Firebird 4.0/tcp (zeus)/P16:CZ" Firebird/Linux/AMD/Intel/x64 (remote interface), version "LI-V4.0.0.2496 Firebird 4.0/tcp (zeus)/P16:CZ" on disk structure version 13.0 Rows before update EMP_NO = 2 FIRST_NAME = Robert LAST_NAME = Nelson PHONE_EXT = 250 HIRE_DATE = 1988/12/28 00:00:00.0000 DEPT_NO = 600 JOB_CODE = VP JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 105,900.00 FULL_NAME = Nelson, Robert EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 1989/04/05 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie Select Count = 2 InsertCount = 0 UpdateCount = 2 DeleteCount = 0 Batch Completion Info Total rows processed = 2 Updated Records = 2 Row 1 State = bcNoMoreErrors Msg = Row 2 State = bcNoMoreErrors Msg = Rows after update EMP_NO = 2 FIRST_NAME = Robert LAST_NAME = Nelson PHONE_EXT = 250 HIRE_DATE = 2018/05/28 00:00:00.0000 DEPT_NO = 600 JOB_CODE = VP JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 105,900.00 FULL_NAME = Nelson, Robert EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 2016/01/31 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie Repeat but with a last dummy row that is ignored Select Count = 2 InsertCount = 0 UpdateCount = 2 DeleteCount = 0 Batch Completion Info Total rows processed = 2 Updated Records = 2 Row 1 State = bcNoMoreErrors Msg = Row 2 State = bcNoMoreErrors Msg = Rows after update EMP_NO = 2 FIRST_NAME = Robert LAST_NAME = Nelson PHONE_EXT = 250 HIRE_DATE = 2018/05/28 00:00:00.0000 DEPT_NO = 600 JOB_CODE = VP JOB_GRADE = 2 JOB_COUNTRY = USA SALARY = 105,900.00 FULL_NAME = Nelson, Robert EMP_NO = 8 FIRST_NAME = Leslie LAST_NAME = Johnson PHONE_EXT = 410 HIRE_DATE = 2016/01/31 00:00:00.0000 DEPT_NO = 180 JOB_CODE = Mktg JOB_GRADE = 3 JOB_COUNTRY = USA SALARY = 64,635.00 FULL_NAME = Johnson, Leslie Insert rows Select Count = 0 InsertCount = 3 UpdateCount = 0 DeleteCount = 0 Batch Completion Info Total rows processed = 3 Updated Records = 3 Row 1 State = bcNoMoreErrors Msg = Row 2 State = bcNoMoreErrors Msg = Row 3 State = bcNoMoreErrors Msg = Rows after insert EMP_NO = 150 FIRST_NAME = John LAST_NAME = Doe PHONE_EXT = HIRE_DATE = 2015/04/01 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 41,000.89 FULL_NAME = Doe, John EMP_NO = 151 FIRST_NAME = Jane LAST_NAME = Doe PHONE_EXT = HIRE_DATE = 2015/04/02 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 42,000.89 FULL_NAME = Doe, Jane EMP_NO = 152 FIRST_NAME = John LAST_NAME = SmithAndJonesFamily1 PHONE_EXT = HIRE_DATE = 2015/04/03 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 41,000.99 FULL_NAME = SmithAndJonesFamily1, John Insert rows - and then cancel Cancel Batch - note - next step will fail with a duplicate key if cancel fails Insert rows - ignore last row Select Count = 0 InsertCount = 2 UpdateCount = 0 DeleteCount = 0 Batch Completion Info Total rows processed = 2 Updated Records = 2 Row 1 State = bcNoMoreErrors Msg = Row 2 State = bcNoMoreErrors Msg = Rows after insert EMP_NO = 150 FIRST_NAME = John LAST_NAME = Doe PHONE_EXT = HIRE_DATE = 2015/04/01 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 41,000.89 FULL_NAME = Doe, John EMP_NO = 151 FIRST_NAME = Jane LAST_NAME = Doe PHONE_EXT = HIRE_DATE = 2015/04/02 00:00:00.0000 DEPT_NO = 600 JOB_CODE = Eng JOB_GRADE = 4 JOB_COUNTRY = England SALARY = 42,000.89 FULL_NAME = Doe, Jane Insert with inline blob Select Count = 0 InsertCount = 2 UpdateCount = 0 DeleteCount = 0 Batch Completion Info Total rows processed = 2 Updated Records = 2 Row 1 State = bcNoMoreErrors Msg = Row 2 State = bcNoMoreErrors Msg = Rows after insert JOB_CODE = ABC JOB_GRADE = 3 JOB_COUNTRY = England JOB_TITLE = Chief Tester MIN_SALARY = 21,000.00 MAX_SALARY = 24,000.99 JOB_REQUIREMENT (Charset Id = 0 Codepage = 0) The quick brown fox jumped over the lazy dog LANGUAGE_REQ = Array: (1: Eng) (2: ) (3: ) (4: ) (5: ) JOB_CODE = DEF JOB_GRADE = 3 JOB_COUNTRY = England JOB_TITLE = Deputy Tester MIN_SALARY = 21,000.00 MAX_SALARY = 24,000.99 JOB_REQUIREMENT (Charset Id = 0 Codepage = 0) The quick brown fox jumped over the running dog LANGUAGE_REQ = Array: (1: Eng) (2: Fra) (3: ) (4: ) (5: ) Insert with explicit blob Select Count = 0 InsertCount = 2 UpdateCount = 0 DeleteCount = 0 Batch Completion Info Total rows processed = 2 Updated Records = 2 Row 1 State = bcNoMoreErrors Msg = Row 2 State = bcNoMoreErrors Msg = Rows after insert JOB_CODE = ABC JOB_GRADE = 3 JOB_COUNTRY = England JOB_TITLE = Chief Tester MIN_SALARY = 21,000.00 MAX_SALARY = 24,000.99 JOB_REQUIREMENT (Charset Id = 0 Codepage = 0) The quick brown fox jumped over the lazy dog LANGUAGE_REQ = Array: (1: Eng) (2: ) (3: ) (4: ) (5: ) JOB_CODE = DEF JOB_GRADE = 3 JOB_COUNTRY = England JOB_TITLE = Deputy Tester MIN_SALARY = 21,000.00 MAX_SALARY = 24,000.99 JOB_REQUIREMENT (Charset Id = 0 Codepage = 0) The quick brown fox jumped over the running dog LANGUAGE_REQ = Array: (1: Eng) (2: Fra) (3: ) (4: ) (5: ) Test Error Handling Error reported (as expected) when changing param type: Cannot change SQL Type from SQL_TIMESTAMP to SQL_VARYING Test Error Handling - Update returning should fail Error reported (as expected) when defering update returning query: This query type (SQL_ExecProcedure) cannot be batched Error handling when Insert rows - duplicate key Error reported when inserting: Error Processing update/insert batch on row number 2 - violation of PRIMARY or UNIQUE KEY constraint "INTEG_27" on table "EMPLOYEE" -Problematic key value is ("EMP_NO" = 150) Select Count = 0 InsertCount = 1 UpdateCount = 0 DeleteCount = 0 Batch Completion Info Total rows processed = 2 Updated Records = 1 Row 1 State = bcNoMoreErrors Msg = Row 2 State = bcExecuteFailed Msg = violation of PRIMARY or UNIQUE KEY constraint "INTEG_27" on table "EMPLOYEE" -Problematic key value is ("EMP_NO" = 150) ------------------------------------------------------ Running Test 20: Stress Test IBatch interface FBVersion = Firebird/Linux/AMD/Intel/x64 (access method), version "LI-V4.0.0.2496 Firebird 4.0" 10000 rows added 20000 rows added 30000 rows added 40000 rows added 50000 rows added Batch Execute Intermediate Apply Batch on row 50001 Batch Completion Info Total rows processed = 50000 Updated Rows = 50000 Row 50000 State = bcNoMoreErrors Msg = 60000 rows added 70000 rows added 80000 rows added 90000 rows added 100000 rows added Batch Execute Batch Completion Info Total rows processed = 50000 Updated Rows = 50000 Row 50000 State = bcNoMoreErrors Msg = Rows in Dataset = 100000 Message Hash = 2014887b8ad27fbb20893a22d6e39f26 Message Hash = 2014887b8ad27fbb20893a22d6e39f26 Test Completed Successfully ------------------------------------------------------ Test Suite Ends