Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : IBM DB2, Cloudscape and Apache Derby Functions : db2_lob_read

db2_lob_read

Gets a user defined size of LOB files with each invocation (PECL ibm_db2:1.6.0-1.6.2)
string db2_lob_read ( resource stmt, int colnum, int length )

Use db2_lob_read() to iterate through a specified column of a result set and retrieve a user defined size of LOB data.

Parameters

stmt

A valid stmt resource containing LOB data.

colnum

A valid column number in the result set of the stmt resource.

length

The size of the LOB data to be retrieved from the stmt resource.

Return Values

Returns the amount of data the user specifies. Returns FALSE if the data cannot be retrieved.

Examples

Example 945. Iterating through different types of data

<?php

/* Database Connection Parameters */
$db = 'SAMPLE';
$username = 'db2inst1';
$password = 'ibmdb2';

/* Obtain Connection Resource */
$conn = db2_connect($db,$username,$password);

if (
$conn) {
   
$drop = 'DROP TABLE clob_stream';
   
$result = @db2_exec( $conn, $drop );

   
$create = 'CREATE TABLE clob_stream (id INTEGER, my_clob CLOB)';
   
$result = db2_exec( $conn, $create );

   
$variable = "";
   
$stmt = db2_prepare($conn, "INSERT INTO clob_stream (id,my_clob) VALUES (1, ?)");
   
$variable = "THIS IS A CLOB TEST. THIS IS A CLOB TEST.";
   
db2_bind_param($stmt, 1, "variable", DB2_PARAM_IN);
   
db2_execute($stmt);

   
$sql = "SELECT id,my_clob FROM clob_stream";
   
$result = db2_prepare($conn, $sql);
   
db2_execute($result);
   
db2_fetch_row($result);
   
$i = 0;
   
/* Read LOB data */
   
while ($data = db2_lob_read($result, 2, 6)) {
       echo
"Loop $i: $data\n";
       
$i = $i + 1;
   }

   
$drop = 'DROP TABLE blob_stream';
   
$result = @db2_exec( $conn, $drop );

   
$create = 'CREATE TABLE blob_stream (id INTEGER, my_blob CLOB)';
   
$result = db2_exec( $conn, $create );

   
$variable = "";
   
$stmt = db2_prepare($conn, "INSERT INTO blob_stream (id,my_blob) VALUES (1, ?)");
   
$variable = "THIS IS A BLOB TEST. THIS IS A BLOB TEST.";
   
db2_bind_param($stmt, 1, "variable", DB2_PARAM_IN);
   
db2_execute($stmt);

   
$sql = "SELECT id,my_blob FROM blob_stream";
   
$result = db2_prepare($conn, $sql);
   
db2_execute($result);
   
db2_fetch_row($result);
   
$i = 0;
   
/* Read LOB data */
   
while ($data = db2_lob_read($result, 2, 6)) {
       echo
"Loop $i: $data\n";
       
$i = $i + 1;
   }
} else {
   echo
'no connection: ' . db2_conn_errormsg();
}

?>

The above example will output:

Loop 0: THIS I
Loop 1: S A CL
Loop 2: OB TES
Loop 3: T. THI
Loop 4: S IS A
Loop 5:  CLOB
Loop 6: TEST.
Loop 0: THIS I
Loop 1: S A BL
Loop 2: OB TES
Loop 3: T. THI
Loop 4: S IS A
Loop 5:  BLOB
Loop 6: TEST.


Change Language


Follow Navioo On Twitter
db2_autocommit
db2_bind_param
db2_client_info
db2_close
db2_column_privileges
db2_columns
db2_commit
db2_conn_error
db2_conn_errormsg
db2_connect
db2_cursor_type
db2_escape_string
db2_exec
db2_execute
db2_fetch_array
db2_fetch_assoc
db2_fetch_both
db2_fetch_object
db2_fetch_row
db2_field_display_size
db2_field_name
db2_field_num
db2_field_precision
db2_field_scale
db2_field_type
db2_field_width
db2_foreign_keys
db2_free_result
db2_free_stmt
db2_get_option
db2_lob_read
db2_next_result
db2_num_fields
db2_num_rows
db2_pconnect
db2_prepare
db2_primary_keys
db2_procedure_columns
db2_procedures
db2_result
db2_rollback
db2_server_info
db2_set_option
db2_special_columns
db2_statistics
db2_stmt_error
db2_stmt_errormsg
db2_table_privileges
db2_tables
eXTReMe Tracker