Project

General

Profile

testblob.p

Tomasz Domin, 06/07/2022 04:10 PM

Download (1.3 KB)

 
1
{g-vars.i &vsh="shared"}
2

    
3
def temp-table bigtable no-undo
4
   field big-txt as clob
5
   field big-bin as blob.
6

    
7
// create database record
8
def var ptr as memptr.
9

    
10

    
11
// clob tests
12
create bigtable.
13

    
14
// file to database clob
15
copy-lob from file "/tmp/clob_input.txt" to bigtable.big-txt.
16

    
17
// database to file
18
copy-lob from bigtable.big-txt to FILE "/tmp/clob_output-1.txt".
19

    
20
// clob database to memptr
21
copy-lob from bigtable.big-txt to ptr.
22

    
23
// memptr to database clob - invalid test case - throws recordOrThrowError(12008)
24
//copy-lob from ptr to something.big-txt.
25
set-size(ptr) = 0.
26

    
27
// file to memptr
28
copy-lob from file "/tmp/clob_input.txt" to ptr.
29

    
30
// clean-up
31
set-size(ptr) = 0.
32
delete bigtable.
33

    
34
// blob tests
35
create bigtable.
36

    
37
// file to database clob
38
copy-lob from file "/tmp/blob_input.bin" to bigtable.big-bin.
39

    
40
// database to file blob
41
copy-lob from bigtable.big-bin to FILE "/tmp/blob_output-1.bin".
42

    
43
// blob database to memptr
44
copy-lob from bigtable.big-bin to ptr.
45
PUT-BYTE(ptr,1) = 65.
46

    
47
// memptr to database blob
48
copy-lob from ptr to bigtable.big-bin.
49
set-size(ptr) = 0.
50

    
51
// blob file to memptr
52
copy-lob from file "/tmp/blob_input.bin" to ptr.
53

    
54
// memptr to blob file
55
copy-lob from ptr to file "/tmp/blob_output-2.bin".
56
set-size(ptr) = 0.
57

    
58
message "Lob test done".
59
readkey PAUSE 60.
60
publish "pop-program".
61
leave.
62
end.