php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #57318 Unable to insert Blob data
Submitted: 2006-10-23 04:40 UTC Modified: 2006-10-23 10:24 UTC
From: sherman dot chan at world dot net Assigned:
Status: Not a bug Package: ibm_db2 (PECL)
PHP Version: 5.0.2 OS: Linux
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: sherman dot chan at world dot net
New email:
PHP Version: OS:

 

 [2006-10-23 04:40 UTC] sherman dot chan at world dot net
Description:
------------
I tried to insert a blob data to my IBM DB2 database, verions 8.1, though PHP with ibm_db2-1.5.1, the script ran ok, it did not give me any error, but I found no data was inserted.

db schema

create table test_blob (
       tcode                 character(10),
       tblob                 blob
);


BTW, I db2_exec() to create a table with the schema on above witout any problem, I can see the table with db2 cli

I just wonder did I missed anything, I have have tried pass an array to db2_execute () instead of using db2_bind_param(), but still no luck.

Thanks
Sherman


Reproduce code:
---------------
<?
$db2host ="xxx.xxx.xxx.xxx";$db2uid = "db2inst1";
$db2pwd = "db2inst1";$db2port = "50004";
$connStr = "DRIVER={IBM DB2 ODBCDRIVER};DATABASE=TEST;".
"HOSTNAME=$db2host;PORT=$db2port;".                            "PROTOCOL=TCPIP;UID=$db2uid;PWD=$db2pwd;";     
$conn = db2_connect ($connStr, '', '');
$sql = "insert into  test_blob (tcode, tblob) values (?, ?) ";
$stml = db2_prepare ($conn, $sql);
db2_bind_param ($stml, 1, "tcode", DB2_CHAR, DB2_PARAM_IN);
db2_bind_param ($stml, 2, "tblob", DB2_BINARY,DB2_PARAM_IN);
db2_execute ($stml);
db2_commit ($conn);
$sql = "select count(*) from  twn_php_object";
$stml = db2_exec ($conn, $sql);
while ($res = db2_fetch_array($stml)) {
   var_dump ($res);
}
?>

Expected result:
----------------
I expect the result
array(1) {
  [0]=>
  int(1)
}


Actual result:
--------------
array(1) {
  [0]=>
  int(0)
}

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-10-23 10:24 UTC] kfbombar at us dot ibm dot com
Hi Sherman,

I am a bit confused on what you are trying to do in your PHP script.  I see a few issues with your script.  I am able to insert a BLOB with no issues.  Please look over the script below, and if you have any other questions, feel free to email me.  Thanks,

--Kellen (kfbombar)

<?php

$conn = db2_connect('sample', 'db2inst1', '*******');

db2_exec($conn, "create table test_blob (tcode character(10), tblob blob)");
$sql = "insert into  test_blob (tcode, tblob) values (?, ?) ";
$stml = db2_prepare ($conn, $sql);
$tcode = "1";
$tblob = dirname(__FILE__) . "/some_binary_file.jpg";
db2_bind_param ($stml, 1, "tcode", DB2_CHAR, DB2_PARAM_IN);
db2_bind_param ($stml, 2, "tblob", DB2_PARAM_FILE, DB2_BINARY, DB2_PARAM_IN);
db2_execute ($stml);
db2_commit ($conn);

$sql = "select count(*) from  test_blob";
$stml = db2_exec ($conn, $sql);
while ($res = db2_fetch_array($stml)) {
   var_dump ($res);
}

?>
 [2007-03-07 16:49 UTC] cathy dot kimbrel at gwinnettcounty dot com
In my EXCEL 2003 spreadsheet I am unable to insert a comment in an unprotected cell when the page itself is protected. What can I do without having to unprotect the page, add the comment and then reprotect the page?
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Fri May 09 13:01:28 2025 UTC