C:\xampp2_not used\php\pear\adodb\tests\test-pgblob.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?php

function getmicrotime()
{
    
$t microtime();
    
$t explode(' ',$t);
    return (float)
$t[1]+ (float)$t[0];
}

function 
doloop()
{
global 
$db,$MAX;
    
    
$sql "select id,firstname,lastname from adoxyz where 
        firstname not like ? and lastname not like ? and id=?"
;
    
$offset 0;
    
/*$sql = "select * from juris9.employee join juris9.emp_perf_plan on epp_empkey = emp_id 
        where emp_name not like ? and emp_name not like ? and emp_id=28000+?";
    $offset = 28000;*/
    
for ($i=1$i <= $MAX$i++) {
        
$db->Param(false);
        
$x = (rand() % 10) + 1;
        
$db->debug= ($i==1);
        
$id $db->GetOne($sql,
            array(
'Z%','Z%',$x));
        if(
$id != $offset+$x) {
            print 
"<p>Error at $x";
            break;
        }
    }
}

include_once(
'../adodb.inc.php');
$db NewADOConnection('postgres7');
$db->PConnect('localhost','tester','test','test') || die("failed connection");

$enc "GIF89a%01%00%01%00%80%FF%00%C0%C0%C0%00%00%00%21%F9%04%01%00%00%00%00%2C%00%00%00%00%01%00%01%00%00%01%012%00%3Bt_clear.gif%0D";
$val rawurldecode($enc);

$MAX 1000;

adodb_pr($db->ServerInfo());

echo 
"<h4>Testing PREPARE/EXECUTE PLAN</h4>";


$db->_bindInputArray true// requires postgresql 7.3+ and ability to modify database
$t getmicrotime();
doloop();
echo 
'<p>',$MAX,' times, with plan=',getmicrotime() - $t,'</p>';


$db->_bindInputArray false;
$t getmicrotime();
doloop();
echo 
'<p>',$MAX,' times, no plan=',getmicrotime() - $t,'</p>';



echo 
"<h4>Testing UPDATEBLOB</h4>";
$db->debug=1;

### TEST BEGINS

$db->Execute("insert into photos (id,name) values(9999,'dot.gif')");
$db->UpdateBlob('photos','photo',$val,'id=9999');
$v $db->GetOne('select photo from photos where id=9999');


### CLEANUP

$db->Execute("delete from photos where id=9999");

### VALIDATION

if ($v !== $val) echo "<b>*** ERROR: Inserted value does not match downloaded val<b>";
else echo 
"<b>*** OK: Passed</b>";

echo 
"<pre>";
echo 
"INSERTED: "$enc;
echo 
"<hr />";
echo
"RETURNED: "rawurlencode($v);
echo 
"<hr /><p>";
echo 
"INSERTED: "$val;
echo 
"<hr />";
echo 
"RETURNED: "$v;

?>
x

Windows NT KPTV 6.2 build 9200 (Windows Server 2012 Datacenter Edition) i586