ruby-informix 0.8.0 → 0.8.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 1ac698ef861cd70166703f77f739a2e91c4b2fa1
4
+ data.tar.gz: a74fac6fa835cecf09efb2270959a96ef2fd450f
5
+ SHA512:
6
+ metadata.gz: c0b0236372a3a3af5b74114fee66311f23682dac500078a0cb8b85caaacc580caccc0e32edf91d08a0c598af54c9f4220ff4dc5c15873a79964030c67f7088a9
7
+ data.tar.gz: 7e78ee3e961d416828c7c66e4562505ed1e7f7927f2fe5769456af379057315f2d84ac45ea703ff81dd8a8bdc30f69d00cc984ad389b1bad7eccf659b751e098
data/COPYRIGHT CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2006-2012, Gerardo Santana Gomez Garrido <gerardo.santana@gmail.com>
1
+ Copyright (c) 2006-2017, Gerardo Santana Gomez Garrido <gerardo.santana@gmail.com>
2
2
  All rights reserved.
3
3
 
4
4
  Redistribution and use in source and binary forms, with or without
data/Changelog CHANGED
@@ -1,3 +1,14 @@
1
+ 0.8.2 2017-04-25
2
+ ------------------
3
+ Minor changes:
4
+ * documentation improved
5
+ * rake task added for building gem
6
+
7
+ 0.8.1 2016-09-19
8
+ ------------------
9
+ Bugs fixed:
10
+ * fixes an compile-time error in Ruby 2.x: "error: lvalue required as left operand of assignment"
11
+
1
12
  0.8.0 2012-04-17
2
13
  ------------------
3
14
  Bugs fixed:
@@ -0,0 +1,143 @@
1
+ # Ruby/Informix -- Ruby library for connecting to IBM Informix.
2
+
3
+ ## Motivation
4
+ Read about [the situation that started it all](http://santanatechnotes.blogspot.com/2006/03/informix-driver-for-ruby.html).
5
+
6
+ ## Download
7
+
8
+ The latest version of Ruby/Informix can be found at http://rubyforge.org/projects/ruby-informix
9
+
10
+ ## Supported platforms
11
+
12
+ Ruby/Informix has been tested succesfully with Informix 7 and above, and
13
+ Informix CSDK 2.81 and above, on the following platforms:
14
+
15
+ Operating System Architecture
16
+ -----------------------------------------
17
+ Solaris SPARC64
18
+ Mac OS X x86-64
19
+ GNU/Linux x86, x86-64
20
+ Windows XP/2000 x86
21
+ HP-UX 11.11 PA-RISC 2.0 64-bit
22
+
23
+ Send me an e-mail if you have [un]succesfully tested Ruby/Informix on another
24
+ platform.
25
+
26
+ ## Installation
27
+
28
+ ### Requirements
29
+
30
+ * Informix CSDK 2.81 or above
31
+
32
+ If you want to build Ruby/Informix instead of installing a precompiled gem,
33
+ you will also need:
34
+
35
+ * Microsoft Visual Studio 6.0, for Windows or
36
+ * an ANSI C compiler, for UNIX and Linux
37
+
38
+ ### Rubygem installation
39
+
40
+ gem install ruby-informix
41
+
42
+ ### From source
43
+
44
+ Set your INFORMIXDIR environment variable and run:
45
+
46
+ rake gem
47
+ sudo -E gem install ruby-informix*.gem
48
+
49
+ ## Documentation
50
+
51
+ RDoc and ri documentation is automatically installed. It can also be found
52
+ [online](http://ruby-informix.rubyforge.org/doc)
53
+
54
+ ## Examples
55
+
56
+ *Note*: set LD\_LIBRARY\_PATH (non-macOS) or DYLD\_LIBRARY\_PATH (macOS) to
57
+ search in $INFORMIXDIR/lib and $INFORMIXDIR/lib/esql before loading the gem.
58
+
59
+ ### Connecting to a database
60
+
61
+ db = Informix.connect('stores')
62
+
63
+ ### Traversing a table
64
+
65
+ db.foreach('select * from stock') do |r|
66
+ # do something with the record
67
+ end
68
+
69
+ ### Fetching all records from a table
70
+
71
+ records = db.cursor('select * from stock') do |cur|
72
+ cur.open
73
+ cur.fetch_all
74
+ end
75
+
76
+ ### Inserting records
77
+
78
+ stmt = db.prepare('insert into state values(?, ?)')
79
+ stmt.execute('CA', 'California')
80
+ stmt.call('NM', 'New Mexico')
81
+ stmt['TX', 'Texas']
82
+
83
+ ### Iterating over a table using a hash (shortcut)
84
+
85
+ db.foreach_hash('select * from customers') do |cust|
86
+ puts "#{cust['firstname']} #{cust['lastname']}"
87
+ end
88
+
89
+ More examples can be found at:
90
+
91
+ http://ruby-informix.rubyforge.org/examples.html
92
+
93
+
94
+ ## Data types supported
95
+
96
+ Informix Ruby
97
+ --------------------------------------------------------
98
+ SMALLINT, INT, INT8, FLOAT, Numeric
99
+ SERIAL, SERIAL8
100
+ CHAR, NCHAR, VARCHAR, NVARCHAR String
101
+ DATE Date
102
+ DATETIME Time
103
+ INTERVAL Informix::IntervalYTM,
104
+ Informix::IntervalDTS
105
+ DECIMAL, MONEY BigDecimal
106
+ BOOL TrueClass, FalseClass
107
+ BYTE, TEXT StringIO, String
108
+ CLOB, BLOB Informix::Slob
109
+
110
+
111
+ NULL values can be inserted and are retrieved as +nil+.
112
+
113
+ Any IO-like object that provides a read method, e.g. StringIO or File objects,
114
+ can be used to insert data in BYTE or TEXT fields. Data retrieved from
115
+ BYTE and TEXT fields are stored in String objects.
116
+
117
+ Strings can be used where Informix accepts them for non-character data types,
118
+ like DATE, DATETIME, INTERVAL, BOOL, DECIMAL and MONEY
119
+
120
+
121
+ ## Recommendations
122
+
123
+ * Use blocks to release Informix resources automatically as soon as possible.
124
+ Alternatively, use #free.
125
+ * You can optimize cursor execution by changing the size of fetch and insert
126
+ buffers, setting the environment variable FET\_BUF\_SIZE to up to 32767.
127
+
128
+
129
+ ## Support
130
+
131
+ Feel free to send me bug reports, feature requests, comments, patches or
132
+ questions directly to my mailbox or via github.
133
+
134
+ ## Presentations and articles about Ruby/Informix
135
+
136
+ * [Talking with Perl, PHP, Python, Ruby to IDS](http://www.informix-zone.com/informix-script-dbapi), Eric Herber, The Informix Zone.
137
+ * [Informix on Rails](http://www.ibm.com/developerworks/blogs/page/gbowerman?entry=informix_on_rails), Guy Bowerman, IBM developerWorks Blogs: Informix Application Development.
138
+ * [Ruby/Informix, and the Ruby Common client](http://www.ibm.com/developerworks/blogs/page/gbowerman?entry=ruby_informix_and_the_ruby), Guy Bowerman, IBM developerWorks Blogs: Informix Application Development.
139
+ * [Using IBM Informix Dynamic Server on Microsoft Windows, Part 6](http://www.ibm.com/developerworks/offers/lp/demos/summary/usingids6.html), Akmal B. Chaudhri, IBM developerWorks: On demand demos.
140
+
141
+ ## License
142
+
143
+ Ruby/Informix is available under the three-clause BSD license
@@ -1,6 +1,6 @@
1
1
  require 'mkmf'
2
2
 
3
- env = nil
3
+ env = libs = nil
4
4
  informixdir = ENV["INFORMIXDIR"]
5
5
  MSWindows = /djgpp|(cyg|ms|bcc)win|mingw/
6
6
 
@@ -9,30 +9,29 @@ if informixdir.nil?
9
9
  exit 1
10
10
  end
11
11
 
12
- esql = informixdir + "/bin/esql"
13
- idefault = informixdir + "/incl/esql"
14
- ldefault = [ informixdir + "/lib" ]
15
- ldefault << informixdir + "/lib/esql" if RUBY_PLATFORM !~ MSWindows
12
+ esql = File.join(informixdir, 'bin', 'esql')
13
+ idefault = File.join(informixdir, 'incl', 'esql')
14
+ ldefault = [ File.join(informixdir, 'lib') ]
15
+ ldefault << File.join(informixdir, 'lib', 'esql') if RUBY_PLATFORM !~ MSWindows
16
16
 
17
17
  dir_config("informix", idefault, ldefault)
18
18
 
19
19
  if RUBY_PLATFORM =~ MSWindows
20
- $libs += informixdir + "/lib/isqlt09a.lib"
20
+ libs += File.join(informixdir, 'lib', 'isqlt09a.lib')
21
21
  else
22
22
  env = "/usr/bin/env"
23
23
 
24
24
  %w(ifsql ifasf ifgen ifos ifgls).each do |lib|
25
- $libs += " " + format(LIBARG, lib)
25
+ libs += " " + format(LIBARG, lib)
26
26
  end
27
- $LIBPATH.each {|path|
28
- checkapi = path + "/checkapi.o"
27
+ $LIBPATH.each do |path|
28
+ checkapi = File.join(path, 'checkapi.o')
29
29
  if File.exist?(checkapi)
30
- $libs += " " + checkapi
30
+ libs += " " + checkapi
31
31
  break
32
32
  end
33
- }
33
+ end
34
34
  end
35
35
 
36
-
37
- `#{env} #{esql} -e informixc.ec`
36
+ %x{#{env} #{esql} -e informixc.ec}
38
37
  create_makefile("informixc")
@@ -2,7 +2,7 @@
2
2
  #include <sqliapi.h>
3
3
  #line 1 "informixc.ec"
4
4
  /*
5
- * Copyright (c) 2006-2012, Gerardo Santana Gomez Garrido <gerardo.santana@gmail.com>
5
+ * Copyright (c) 2006-2017, Gerardo Santana Gomez Garrido <gerardo.santana@gmail.com>
6
6
  * All rights reserved.
7
7
  *
8
8
  * Redistribution and use in source and binary forms, with or without
@@ -2409,12 +2409,19 @@ static ifx_cursor_t _SQ0 = {0};
2409
2409
  }
2410
2410
 
2411
2411
 
2412
- OBJ_FREEZE(server_type = rb_str_new2(c_version.server_type));
2413
- OBJ_FREEZE(major = rb_str_new2(c_version.major));
2414
- OBJ_FREEZE(minor = rb_str_new2(c_version.minor));
2415
- OBJ_FREEZE(os = rb_str_new2(c_version.os));
2416
- OBJ_FREEZE(level = rb_str_new2(c_version.level));
2417
- OBJ_FREEZE(full = rb_str_new2(c_version.full));
2412
+ server_type = rb_str_new2(c_version.server_type);
2413
+ major = rb_str_new2(c_version.major);
2414
+ minor = rb_str_new2(c_version.minor);
2415
+ os = rb_str_new2(c_version.os);
2416
+ level = rb_str_new2(c_version.level);
2417
+ full = rb_str_new2(c_version.full);
2418
+
2419
+ OBJ_FREEZE(server_type);
2420
+ OBJ_FREEZE(major);
2421
+ OBJ_FREEZE(minor);
2422
+ OBJ_FREEZE(os);
2423
+ OBJ_FREEZE(level);
2424
+ OBJ_FREEZE(full);
2418
2425
 
2419
2426
  version = rb_struct_new(rb_cIfxVersion, server_type, major, minor, os,
2420
2427
  level, full, NULL);
@@ -2437,13 +2444,13 @@ rb_database_close(VALUE self)
2437
2444
  /*
2438
2445
  * EXEC SQL begin declare section;
2439
2446
  */
2440
- #line 2043 "informixc.ec"
2441
- #line 2044 "informixc.ec"
2447
+ #line 2050 "informixc.ec"
2448
+ #line 2051 "informixc.ec"
2442
2449
  char *id;
2443
2450
  /*
2444
2451
  * EXEC SQL end declare section;
2445
2452
  */
2446
- #line 2045 "informixc.ec"
2453
+ #line 2052 "informixc.ec"
2447
2454
 
2448
2455
 
2449
2456
  Data_Get_Struct(self, database_t, dbt);
@@ -2451,11 +2458,11 @@ rb_database_close(VALUE self)
2451
2458
  /*
2452
2459
  * EXEC SQL disconnect :id;
2453
2460
  */
2454
- #line 2049 "informixc.ec"
2461
+ #line 2056 "informixc.ec"
2455
2462
  {
2456
- #line 2049 "informixc.ec"
2463
+ #line 2056 "informixc.ec"
2457
2464
  sqli_connect_close(0, id, 0, 0);
2458
- #line 2049 "informixc.ec"
2465
+ #line 2056 "informixc.ec"
2459
2466
  }
2460
2467
 
2461
2468
  return Qnil;
@@ -2487,13 +2494,13 @@ rb_database_immediate(VALUE self, VALUE arg)
2487
2494
  /*
2488
2495
  * EXEC SQL begin declare section;
2489
2496
  */
2490
- #line 2077 "informixc.ec"
2491
- #line 2078 "informixc.ec"
2497
+ #line 2084 "informixc.ec"
2498
+ #line 2085 "informixc.ec"
2492
2499
  char *query, *did;
2493
2500
  /*
2494
2501
  * EXEC SQL end declare section;
2495
2502
  */
2496
- #line 2079 "informixc.ec"
2503
+ #line 2086 "informixc.ec"
2497
2504
 
2498
2505
 
2499
2506
  Data_Get_Struct(self, database_t, dbt);
@@ -2501,11 +2508,11 @@ rb_database_immediate(VALUE self, VALUE arg)
2501
2508
  /*
2502
2509
  * EXEC SQL set connection :did;
2503
2510
  */
2504
- #line 2083 "informixc.ec"
2511
+ #line 2090 "informixc.ec"
2505
2512
  {
2506
- #line 2083 "informixc.ec"
2513
+ #line 2090 "informixc.ec"
2507
2514
  sqli_connect_set(0, did, 0);
2508
- #line 2083 "informixc.ec"
2515
+ #line 2090 "informixc.ec"
2509
2516
  }
2510
2517
 
2511
2518
  if (SQLCODE < 0)
@@ -2515,11 +2522,11 @@ rb_database_immediate(VALUE self, VALUE arg)
2515
2522
  /*
2516
2523
  * EXEC SQL execute immediate :query;
2517
2524
  */
2518
- #line 2089 "informixc.ec"
2525
+ #line 2096 "informixc.ec"
2519
2526
  {
2520
- #line 2089 "informixc.ec"
2527
+ #line 2096 "informixc.ec"
2521
2528
  sqli_exec_immed(query);
2522
- #line 2089 "informixc.ec"
2529
+ #line 2096 "informixc.ec"
2523
2530
  }
2524
2531
  if (SQLCODE < 0)
2525
2532
  raise_ifx_extended();
@@ -2540,13 +2547,13 @@ rb_database_rollback(VALUE self)
2540
2547
  /*
2541
2548
  * EXEC SQL begin declare section;
2542
2549
  */
2543
- #line 2106 "informixc.ec"
2544
- #line 2107 "informixc.ec"
2550
+ #line 2113 "informixc.ec"
2551
+ #line 2114 "informixc.ec"
2545
2552
  char *did;
2546
2553
  /*
2547
2554
  * EXEC SQL end declare section;
2548
2555
  */
2549
- #line 2108 "informixc.ec"
2556
+ #line 2115 "informixc.ec"
2550
2557
 
2551
2558
 
2552
2559
  Data_Get_Struct(self, database_t, dbt);
@@ -2554,11 +2561,11 @@ rb_database_rollback(VALUE self)
2554
2561
  /*
2555
2562
  * EXEC SQL set connection :did;
2556
2563
  */
2557
- #line 2112 "informixc.ec"
2564
+ #line 2119 "informixc.ec"
2558
2565
  {
2559
- #line 2112 "informixc.ec"
2566
+ #line 2119 "informixc.ec"
2560
2567
  sqli_connect_set(0, did, 0);
2561
- #line 2112 "informixc.ec"
2568
+ #line 2119 "informixc.ec"
2562
2569
  }
2563
2570
 
2564
2571
  if (SQLCODE < 0)
@@ -2567,11 +2574,11 @@ rb_database_rollback(VALUE self)
2567
2574
  /*
2568
2575
  * EXEC SQL rollback;
2569
2576
  */
2570
- #line 2117 "informixc.ec"
2577
+ #line 2124 "informixc.ec"
2571
2578
  {
2572
- #line 2117 "informixc.ec"
2579
+ #line 2124 "informixc.ec"
2573
2580
  sqli_trans_rollback();
2574
- #line 2117 "informixc.ec"
2581
+ #line 2124 "informixc.ec"
2575
2582
  }
2576
2583
 
2577
2584
  return self;
@@ -2590,13 +2597,13 @@ rb_database_commit(VALUE self)
2590
2597
  /*
2591
2598
  * EXEC SQL begin declare section;
2592
2599
  */
2593
- #line 2132 "informixc.ec"
2594
- #line 2133 "informixc.ec"
2600
+ #line 2139 "informixc.ec"
2601
+ #line 2140 "informixc.ec"
2595
2602
  char *did;
2596
2603
  /*
2597
2604
  * EXEC SQL end declare section;
2598
2605
  */
2599
- #line 2134 "informixc.ec"
2606
+ #line 2141 "informixc.ec"
2600
2607
 
2601
2608
 
2602
2609
  Data_Get_Struct(self, database_t, dbt);
@@ -2604,11 +2611,11 @@ rb_database_commit(VALUE self)
2604
2611
  /*
2605
2612
  * EXEC SQL set connection :did;
2606
2613
  */
2607
- #line 2138 "informixc.ec"
2614
+ #line 2145 "informixc.ec"
2608
2615
  {
2609
- #line 2138 "informixc.ec"
2616
+ #line 2145 "informixc.ec"
2610
2617
  sqli_connect_set(0, did, 0);
2611
- #line 2138 "informixc.ec"
2618
+ #line 2145 "informixc.ec"
2612
2619
  }
2613
2620
 
2614
2621
  if (SQLCODE < 0)
@@ -2617,11 +2624,11 @@ rb_database_commit(VALUE self)
2617
2624
  /*
2618
2625
  * EXEC SQL commit;
2619
2626
  */
2620
- #line 2143 "informixc.ec"
2627
+ #line 2150 "informixc.ec"
2621
2628
  {
2622
- #line 2143 "informixc.ec"
2629
+ #line 2150 "informixc.ec"
2623
2630
  sqli_trans_commit();
2624
- #line 2143 "informixc.ec"
2631
+ #line 2150 "informixc.ec"
2625
2632
  }
2626
2633
 
2627
2634
  return self;
@@ -2666,13 +2673,13 @@ rb_database_transaction(VALUE self)
2666
2673
  /*
2667
2674
  * EXEC SQL begin declare section;
2668
2675
  */
2669
- #line 2184 "informixc.ec"
2670
- #line 2185 "informixc.ec"
2676
+ #line 2191 "informixc.ec"
2677
+ #line 2192 "informixc.ec"
2671
2678
  char *did;
2672
2679
  /*
2673
2680
  * EXEC SQL end declare section;
2674
2681
  */
2675
- #line 2186 "informixc.ec"
2682
+ #line 2193 "informixc.ec"
2676
2683
 
2677
2684
 
2678
2685
  Data_Get_Struct(self, database_t, dbt);
@@ -2680,11 +2687,11 @@ rb_database_transaction(VALUE self)
2680
2687
  /*
2681
2688
  * EXEC SQL set connection :did;
2682
2689
  */
2683
- #line 2190 "informixc.ec"
2690
+ #line 2197 "informixc.ec"
2684
2691
  {
2685
- #line 2190 "informixc.ec"
2692
+ #line 2197 "informixc.ec"
2686
2693
  sqli_connect_set(0, did, 0);
2687
- #line 2190 "informixc.ec"
2694
+ #line 2197 "informixc.ec"
2688
2695
  }
2689
2696
 
2690
2697
  if (SQLCODE < 0)
@@ -2693,20 +2700,20 @@ rb_database_transaction(VALUE self)
2693
2700
  /*
2694
2701
  * EXEC SQL commit;
2695
2702
  */
2696
- #line 2195 "informixc.ec"
2703
+ #line 2202 "informixc.ec"
2697
2704
  {
2698
- #line 2195 "informixc.ec"
2705
+ #line 2202 "informixc.ec"
2699
2706
  sqli_trans_commit();
2700
- #line 2195 "informixc.ec"
2707
+ #line 2202 "informixc.ec"
2701
2708
  }
2702
2709
  /*
2703
2710
  * EXEC SQL begin work;
2704
2711
  */
2705
- #line 2196 "informixc.ec"
2712
+ #line 2203 "informixc.ec"
2706
2713
  {
2707
- #line 2196 "informixc.ec"
2714
+ #line 2203 "informixc.ec"
2708
2715
  sqli_trans_begin2((mint)1);
2709
- #line 2196 "informixc.ec"
2716
+ #line 2203 "informixc.ec"
2710
2717
  }
2711
2718
  ret = rb_rescue(rb_yield, self, database_transfail, self);
2712
2719
 
@@ -2716,11 +2723,11 @@ rb_database_transaction(VALUE self)
2716
2723
  /*
2717
2724
  * EXEC SQL commit;
2718
2725
  */
2719
- #line 2202 "informixc.ec"
2726
+ #line 2209 "informixc.ec"
2720
2727
  {
2721
- #line 2202 "informixc.ec"
2728
+ #line 2209 "informixc.ec"
2722
2729
  sqli_trans_commit();
2723
- #line 2202 "informixc.ec"
2730
+ #line 2209 "informixc.ec"
2724
2731
  }
2725
2732
 
2726
2733
  return self;
@@ -2753,8 +2760,8 @@ rb_database_columns(VALUE self, VALUE tablename)
2753
2760
  /*
2754
2761
  * EXEC SQL begin declare section;
2755
2762
  */
2756
- #line 2231 "informixc.ec"
2757
- #line 2232 "informixc.ec"
2763
+ #line 2238 "informixc.ec"
2764
+ #line 2239 "informixc.ec"
2758
2765
  char *did, *cid;
2759
2766
  char *tabname;
2760
2767
  int tabid, xid;
@@ -2765,7 +2772,7 @@ short coltype, collength;
2765
2772
  /*
2766
2773
  * EXEC SQL end declare section;
2767
2774
  */
2768
- #line 2239 "informixc.ec"
2775
+ #line 2246 "informixc.ec"
2769
2776
 
2770
2777
 
2771
2778
  Data_Get_Struct(self, database_t, dbt);
@@ -2773,11 +2780,11 @@ short coltype, collength;
2773
2780
  /*
2774
2781
  * EXEC SQL set connection :did;
2775
2782
  */
2776
- #line 2243 "informixc.ec"
2783
+ #line 2250 "informixc.ec"
2777
2784
  {
2778
- #line 2243 "informixc.ec"
2785
+ #line 2250 "informixc.ec"
2779
2786
  sqli_connect_set(0, did, 0);
2780
- #line 2243 "informixc.ec"
2787
+ #line 2250 "informixc.ec"
2781
2788
  }
2782
2789
 
2783
2790
  if (SQLCODE < 0)
@@ -2788,35 +2795,35 @@ short coltype, collength;
2788
2795
  /*
2789
2796
  * EXEC SQL select tabid into :tabid from systables where tabname = :tabname;
2790
2797
  */
2791
- #line 2250 "informixc.ec"
2798
+ #line 2257 "informixc.ec"
2792
2799
  {
2793
- #line 2250 "informixc.ec"
2800
+ #line 2257 "informixc.ec"
2794
2801
  static const char *sqlcmdtxt[] =
2795
- #line 2250 "informixc.ec"
2802
+ #line 2257 "informixc.ec"
2796
2803
  {
2797
- #line 2250 "informixc.ec"
2804
+ #line 2257 "informixc.ec"
2798
2805
  "select tabid from systables where tabname = ?",
2799
2806
  0
2800
2807
  };
2801
- #line 2250 "informixc.ec"
2808
+ #line 2257 "informixc.ec"
2802
2809
  static ifx_cursor_t _SQ0 = {0};
2803
2810
  static ifx_sqlvar_t _sqibind[] =
2804
2811
  {
2805
2812
  { 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
2806
- #line 2250 "informixc.ec"
2813
+ #line 2257 "informixc.ec"
2807
2814
  };
2808
2815
  static ifx_sqlvar_t _sqobind[] =
2809
2816
  {
2810
2817
  { 102, sizeof(tabid), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
2811
- #line 2250 "informixc.ec"
2818
+ #line 2257 "informixc.ec"
2812
2819
  };
2813
- #line 2250 "informixc.ec"
2820
+ #line 2257 "informixc.ec"
2814
2821
  _sqibind[0].sqldata = tabname;
2815
- #line 2250 "informixc.ec"
2822
+ #line 2257 "informixc.ec"
2816
2823
  _sqobind[0].sqldata = (char *) &tabid;
2817
- #line 2250 "informixc.ec"
2824
+ #line 2257 "informixc.ec"
2818
2825
  sqli_slct(ESQLINTVERSION, &_SQ0,sqlcmdtxt,1,_sqibind,1,_sqobind,0,(ifx_literal_t *)0,(ifx_namelist_t *)0,0);
2819
- #line 2250 "informixc.ec"
2826
+ #line 2257 "informixc.ec"
2820
2827
  }
2821
2828
 
2822
2829
  if (SQLCODE == SQLNOTFOUND)
@@ -2827,19 +2834,19 @@ static ifx_cursor_t _SQ0 = {0};
2827
2834
  /*
2828
2835
  * EXEC SQL open :cid using :tabid;
2829
2836
  */
2830
- #line 2257 "informixc.ec"
2837
+ #line 2264 "informixc.ec"
2831
2838
  {
2832
- #line 2257 "informixc.ec"
2839
+ #line 2264 "informixc.ec"
2833
2840
  static ifx_sqlvar_t _sqibind[] =
2834
2841
  {
2835
2842
  { 102, sizeof(tabid), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
2836
- #line 2257 "informixc.ec"
2843
+ #line 2264 "informixc.ec"
2837
2844
  };
2838
2845
  static ifx_sqlda_t _SD0 = { 1, _sqibind, {0}, 1, 0 };
2839
- #line 2257 "informixc.ec"
2846
+ #line 2264 "informixc.ec"
2840
2847
  _sqibind[0].sqldata = (char *) &tabid;
2841
2848
  sqli_curs_open(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), &_SD0, (char *)0, (struct value *)0, 1, 0);
2842
- #line 2257 "informixc.ec"
2849
+ #line 2264 "informixc.ec"
2843
2850
  }
2844
2851
 
2845
2852
  if (SQLCODE < 0)
@@ -2850,9 +2857,9 @@ static ifx_cursor_t _SQ0 = {0};
2850
2857
  * EXEC SQL fetch :cid into :colname, :coltype, :collength, :xid,
2851
2858
  * :deftype, :defvalue;
2852
2859
  */
2853
- #line 2263 "informixc.ec"
2860
+ #line 2270 "informixc.ec"
2854
2861
  {
2855
- #line 2264 "informixc.ec"
2862
+ #line 2271 "informixc.ec"
2856
2863
  static ifx_sqlvar_t _sqobind[] =
2857
2864
  {
2858
2865
  { 114, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
@@ -2861,24 +2868,24 @@ static ifx_cursor_t _SQ0 = {0};
2861
2868
  { 102, sizeof(xid), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
2862
2869
  { 100, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
2863
2870
  { 114, 257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
2864
- #line 2264 "informixc.ec"
2871
+ #line 2271 "informixc.ec"
2865
2872
  };
2866
2873
  static ifx_sqlda_t _SD0 = { 6, _sqobind, {0}, 6, 0 };
2867
2874
  static _FetchSpec _FS1 = { 0, 1, 0 };
2868
- #line 2264 "informixc.ec"
2875
+ #line 2271 "informixc.ec"
2869
2876
  _sqobind[0].sqldata = colname;
2870
- #line 2264 "informixc.ec"
2877
+ #line 2271 "informixc.ec"
2871
2878
  _sqobind[1].sqldata = (char *) &coltype;
2872
- #line 2264 "informixc.ec"
2879
+ #line 2271 "informixc.ec"
2873
2880
  _sqobind[2].sqldata = (char *) &collength;
2874
- #line 2264 "informixc.ec"
2881
+ #line 2271 "informixc.ec"
2875
2882
  _sqobind[3].sqldata = (char *) &xid;
2876
- #line 2264 "informixc.ec"
2883
+ #line 2271 "informixc.ec"
2877
2884
  _sqobind[4].sqldata = deftype;
2878
- #line 2264 "informixc.ec"
2885
+ #line 2271 "informixc.ec"
2879
2886
  _sqobind[5].sqldata = defvalue;
2880
2887
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), (ifx_sqlda_t *)0, &_SD0, (char *)0, &_FS1);
2881
- #line 2264 "informixc.ec"
2888
+ #line 2271 "informixc.ec"
2882
2889
  }
2883
2890
  if (SQLCODE < 0)
2884
2891
  raise_ifx_extended();
@@ -2976,11 +2983,11 @@ static ifx_cursor_t _SQ0 = {0};
2976
2983
  /*
2977
2984
  * EXEC SQL close :cid;
2978
2985
  */
2979
- #line 2358 "informixc.ec"
2986
+ #line 2365 "informixc.ec"
2980
2987
  {
2981
- #line 2358 "informixc.ec"
2988
+ #line 2365 "informixc.ec"
2982
2989
  sqli_curs_close(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256));
2983
- #line 2358 "informixc.ec"
2990
+ #line 2365 "informixc.ec"
2984
2991
  }
2985
2992
 
2986
2993
  return result;
@@ -3006,13 +3013,13 @@ st_free(cursor_t *c)
3006
3013
  /*
3007
3014
  * EXEC SQL begin declare section;
3008
3015
  */
3009
- #line 2380 "informixc.ec"
3010
- #line 2381 "informixc.ec"
3016
+ #line 2387 "informixc.ec"
3017
+ #line 2388 "informixc.ec"
3011
3018
  char *sid, *did;
3012
3019
  /*
3013
3020
  * EXEC SQL end declare section;
3014
3021
  */
3015
- #line 2382 "informixc.ec"
3022
+ #line 2389 "informixc.ec"
3016
3023
 
3017
3024
 
3018
3025
  free_input_slots(c);
@@ -3022,11 +3029,11 @@ st_free(cursor_t *c)
3022
3029
  /*
3023
3030
  * EXEC SQL set connection :did;
3024
3031
  */
3025
- #line 2388 "informixc.ec"
3032
+ #line 2395 "informixc.ec"
3026
3033
  {
3027
- #line 2388 "informixc.ec"
3034
+ #line 2395 "informixc.ec"
3028
3035
  sqli_connect_set(0, did, 0);
3029
- #line 2388 "informixc.ec"
3036
+ #line 2395 "informixc.ec"
3030
3037
  }
3031
3038
  if (SQLCODE < 0)
3032
3039
  return;
@@ -3035,11 +3042,11 @@ st_free(cursor_t *c)
3035
3042
  /*
3036
3043
  * EXEC SQL free :sid;
3037
3044
  */
3038
- #line 2393 "informixc.ec"
3045
+ #line 2400 "informixc.ec"
3039
3046
  {
3040
- #line 2393 "informixc.ec"
3047
+ #line 2400 "informixc.ec"
3041
3048
  sqli_curs_free(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, sid, 258));
3042
- #line 2393 "informixc.ec"
3049
+ #line 2400 "informixc.ec"
3043
3050
  }
3044
3051
  }
3045
3052
 
@@ -3070,13 +3077,13 @@ rb_statement_initialize(VALUE self, VALUE db, VALUE query)
3070
3077
  /*
3071
3078
  * EXEC SQL begin declare section;
3072
3079
  */
3073
- #line 2420 "informixc.ec"
3074
- #line 2421 "informixc.ec"
3080
+ #line 2427 "informixc.ec"
3081
+ #line 2428 "informixc.ec"
3075
3082
  char *c_query, *sid, *did;
3076
3083
  /*
3077
3084
  * EXEC SQL end declare section;
3078
3085
  */
3079
- #line 2422 "informixc.ec"
3086
+ #line 2429 "informixc.ec"
3080
3087
 
3081
3088
 
3082
3089
  Data_Get_Struct(db, database_t, dbt);
@@ -3084,11 +3091,11 @@ rb_statement_initialize(VALUE self, VALUE db, VALUE query)
3084
3091
  /*
3085
3092
  * EXEC SQL set connection :did;
3086
3093
  */
3087
- #line 2426 "informixc.ec"
3094
+ #line 2433 "informixc.ec"
3088
3095
  {
3089
- #line 2426 "informixc.ec"
3096
+ #line 2433 "informixc.ec"
3090
3097
  sqli_connect_set(0, did, 0);
3091
- #line 2426 "informixc.ec"
3098
+ #line 2433 "informixc.ec"
3092
3099
  }
3093
3100
  if (SQLCODE < 0)
3094
3101
  raise_ifx_extended();
@@ -3104,11 +3111,11 @@ rb_statement_initialize(VALUE self, VALUE db, VALUE query)
3104
3111
  /*
3105
3112
  * EXEC SQL prepare :sid from :c_query;
3106
3113
  */
3107
- #line 2438 "informixc.ec"
3114
+ #line 2445 "informixc.ec"
3108
3115
  {
3109
- #line 2438 "informixc.ec"
3116
+ #line 2445 "informixc.ec"
3110
3117
  sqli_prep(ESQLINTVERSION, sid, c_query,(ifx_literal_t *)0, (ifx_namelist_t *)0, -1, 0, 0 );
3111
- #line 2438 "informixc.ec"
3118
+ #line 2445 "informixc.ec"
3112
3119
  }
3113
3120
  if (SQLCODE < 0)
3114
3121
  raise_ifx_extended();
@@ -3117,11 +3124,11 @@ rb_statement_initialize(VALUE self, VALUE db, VALUE query)
3117
3124
  /*
3118
3125
  * EXEC SQL describe :sid into output;
3119
3126
  */
3120
- #line 2443 "informixc.ec"
3127
+ #line 2450 "informixc.ec"
3121
3128
  {
3122
- #line 2443 "informixc.ec"
3129
+ #line 2450 "informixc.ec"
3123
3130
  sqli_describe_stmt(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, sid, 257), &output, 0);
3124
- #line 2443 "informixc.ec"
3131
+ #line 2450 "informixc.ec"
3125
3132
  }
3126
3133
  c->daOutput = output;
3127
3134
 
@@ -3168,13 +3175,13 @@ rb_statement_call(int argc, VALUE *argv, VALUE self)
3168
3175
  /*
3169
3176
  * EXEC SQL begin declare section;
3170
3177
  */
3171
- #line 2486 "informixc.ec"
3172
- #line 2487 "informixc.ec"
3178
+ #line 2493 "informixc.ec"
3179
+ #line 2494 "informixc.ec"
3173
3180
  char *sid, *did;
3174
3181
  /*
3175
3182
  * EXEC SQL end declare section;
3176
3183
  */
3177
- #line 2488 "informixc.ec"
3184
+ #line 2495 "informixc.ec"
3178
3185
 
3179
3186
 
3180
3187
  Data_Get_Struct(self, cursor_t, c);
@@ -3183,11 +3190,11 @@ rb_statement_call(int argc, VALUE *argv, VALUE self)
3183
3190
  /*
3184
3191
  * EXEC SQL set connection :did;
3185
3192
  */
3186
- #line 2493 "informixc.ec"
3193
+ #line 2500 "informixc.ec"
3187
3194
  {
3188
- #line 2493 "informixc.ec"
3195
+ #line 2500 "informixc.ec"
3189
3196
  sqli_connect_set(0, did, 0);
3190
- #line 2493 "informixc.ec"
3197
+ #line 2500 "informixc.ec"
3191
3198
  }
3192
3199
  if (SQLCODE < 0)
3193
3200
  raise_ifx_extended();
@@ -3207,11 +3214,11 @@ rb_statement_call(int argc, VALUE *argv, VALUE self)
3207
3214
  * EXEC SQL execute :sid into descriptor output
3208
3215
  * using descriptor input;
3209
3216
  */
3210
- #line 2508 "informixc.ec"
3217
+ #line 2515 "informixc.ec"
3211
3218
  {
3212
- #line 2509 "informixc.ec"
3219
+ #line 2516 "informixc.ec"
3213
3220
  sqli_exec(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, sid, 257), input, (char *)0, (struct value *)0, output, (char *)0, (struct value *)0, 0);
3214
- #line 2509 "informixc.ec"
3221
+ #line 2516 "informixc.ec"
3215
3222
  }
3216
3223
  clean_input_slots(c);
3217
3224
  }
@@ -3219,11 +3226,11 @@ rb_statement_call(int argc, VALUE *argv, VALUE self)
3219
3226
  /*
3220
3227
  * EXEC SQL execute :sid into descriptor output;
3221
3228
  */
3222
- #line 2513 "informixc.ec"
3229
+ #line 2520 "informixc.ec"
3223
3230
  {
3224
- #line 2513 "informixc.ec"
3231
+ #line 2520 "informixc.ec"
3225
3232
  sqli_exec(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, sid, 257), (ifx_sqlda_t *)0, (char *)0, (struct value *)0, output, (char *)0, (struct value *)0, 0);
3226
- #line 2513 "informixc.ec"
3233
+ #line 2520 "informixc.ec"
3227
3234
  }
3228
3235
 
3229
3236
  if (SQLCODE < 0)
@@ -3239,11 +3246,11 @@ rb_statement_call(int argc, VALUE *argv, VALUE self)
3239
3246
  /*
3240
3247
  * EXEC SQL execute :sid using descriptor input;
3241
3248
  */
3242
- #line 2525 "informixc.ec"
3249
+ #line 2532 "informixc.ec"
3243
3250
  {
3244
- #line 2525 "informixc.ec"
3251
+ #line 2532 "informixc.ec"
3245
3252
  sqli_exec(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, sid, 257), input, (char *)0, (struct value *)0, (ifx_sqlda_t *)0, (char *)0, (struct value *)0, 0);
3246
- #line 2525 "informixc.ec"
3253
+ #line 2532 "informixc.ec"
3247
3254
  }
3248
3255
  clean_input_slots(c);
3249
3256
  }
@@ -3251,11 +3258,11 @@ rb_statement_call(int argc, VALUE *argv, VALUE self)
3251
3258
  /*
3252
3259
  * EXEC SQL execute :sid;
3253
3260
  */
3254
- #line 2529 "informixc.ec"
3261
+ #line 2536 "informixc.ec"
3255
3262
  {
3256
- #line 2529 "informixc.ec"
3263
+ #line 2536 "informixc.ec"
3257
3264
  sqli_exec(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, sid, 257), (ifx_sqlda_t *)0, (char *)0, (struct value *)0, (ifx_sqlda_t *)0, (char *)0, (struct value *)0, 0);
3258
- #line 2529 "informixc.ec"
3265
+ #line 2536 "informixc.ec"
3259
3266
  }
3260
3267
  }
3261
3268
  if (SQLCODE < 0)
@@ -3317,13 +3324,13 @@ fetch(VALUE self, VALUE type, VALUE bang)
3317
3324
  /*
3318
3325
  * EXEC SQL begin declare section;
3319
3326
  */
3320
- #line 2587 "informixc.ec"
3321
- #line 2588 "informixc.ec"
3327
+ #line 2594 "informixc.ec"
3328
+ #line 2595 "informixc.ec"
3322
3329
  char *cid, *did;
3323
3330
  /*
3324
3331
  * EXEC SQL end declare section;
3325
3332
  */
3326
- #line 2589 "informixc.ec"
3333
+ #line 2596 "informixc.ec"
3327
3334
 
3328
3335
  short c_bang;
3329
3336
  cursor_t *c;
@@ -3338,11 +3345,11 @@ fetch(VALUE self, VALUE type, VALUE bang)
3338
3345
  /*
3339
3346
  * EXEC SQL set connection :did;
3340
3347
  */
3341
- #line 2600 "informixc.ec"
3348
+ #line 2607 "informixc.ec"
3342
3349
  {
3343
- #line 2600 "informixc.ec"
3350
+ #line 2607 "informixc.ec"
3344
3351
  sqli_connect_set(0, did, 0);
3345
- #line 2600 "informixc.ec"
3352
+ #line 2607 "informixc.ec"
3346
3353
  }
3347
3354
  if (SQLCODE < 0)
3348
3355
  raise_ifx_extended();
@@ -3353,12 +3360,12 @@ fetch(VALUE self, VALUE type, VALUE bang)
3353
3360
  /*
3354
3361
  * EXEC SQL fetch :cid using descriptor output;
3355
3362
  */
3356
- #line 2607 "informixc.ec"
3363
+ #line 2614 "informixc.ec"
3357
3364
  {
3358
- #line 2607 "informixc.ec"
3365
+ #line 2614 "informixc.ec"
3359
3366
  static _FetchSpec _FS0 = { 0, 1, 0 };
3360
3367
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), (ifx_sqlda_t *)0, output, (char *)0, &_FS0);
3361
- #line 2607 "informixc.ec"
3368
+ #line 2614 "informixc.ec"
3362
3369
  }
3363
3370
  if (SQLCODE < 0)
3364
3371
  raise_ifx_extended();
@@ -3380,13 +3387,13 @@ fetch_many(VALUE self, VALUE n, VALUE type)
3380
3387
  /*
3381
3388
  * EXEC SQL begin declare section;
3382
3389
  */
3383
- #line 2625 "informixc.ec"
3384
- #line 2626 "informixc.ec"
3390
+ #line 2632 "informixc.ec"
3391
+ #line 2633 "informixc.ec"
3385
3392
  char *cid, *did;
3386
3393
  /*
3387
3394
  * EXEC SQL end declare section;
3388
3395
  */
3389
- #line 2627 "informixc.ec"
3396
+ #line 2634 "informixc.ec"
3390
3397
 
3391
3398
  cursor_t *c;
3392
3399
  struct sqlda *output;
@@ -3402,11 +3409,11 @@ fetch_many(VALUE self, VALUE n, VALUE type)
3402
3409
  /*
3403
3410
  * EXEC SQL set connection :did;
3404
3411
  */
3405
- #line 2639 "informixc.ec"
3412
+ #line 2646 "informixc.ec"
3406
3413
  {
3407
- #line 2639 "informixc.ec"
3414
+ #line 2646 "informixc.ec"
3408
3415
  sqli_connect_set(0, did, 0);
3409
- #line 2639 "informixc.ec"
3416
+ #line 2646 "informixc.ec"
3410
3417
  }
3411
3418
  if (SQLCODE < 0)
3412
3419
  raise_ifx_extended();
@@ -3426,12 +3433,12 @@ fetch_many(VALUE self, VALUE n, VALUE type)
3426
3433
  /*
3427
3434
  * EXEC SQL fetch :cid using descriptor output;
3428
3435
  */
3429
- #line 2655 "informixc.ec"
3436
+ #line 2662 "informixc.ec"
3430
3437
  {
3431
- #line 2655 "informixc.ec"
3438
+ #line 2662 "informixc.ec"
3432
3439
  static _FetchSpec _FS0 = { 0, 1, 0 };
3433
3440
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), (ifx_sqlda_t *)0, output, (char *)0, &_FS0);
3434
- #line 2655 "informixc.ec"
3441
+ #line 2662 "informixc.ec"
3435
3442
  }
3436
3443
  if (SQLCODE < 0)
3437
3444
  raise_ifx_extended();
@@ -3460,13 +3467,13 @@ each(VALUE self, VALUE type, VALUE bang)
3460
3467
  /*
3461
3468
  * EXEC SQL begin declare section;
3462
3469
  */
3463
- #line 2680 "informixc.ec"
3464
- #line 2681 "informixc.ec"
3470
+ #line 2687 "informixc.ec"
3471
+ #line 2688 "informixc.ec"
3465
3472
  char *cid, *did;
3466
3473
  /*
3467
3474
  * EXEC SQL end declare section;
3468
3475
  */
3469
- #line 2682 "informixc.ec"
3476
+ #line 2689 "informixc.ec"
3470
3477
 
3471
3478
  short c_bang;
3472
3479
  struct sqlda *output;
@@ -3480,11 +3487,11 @@ each(VALUE self, VALUE type, VALUE bang)
3480
3487
  /*
3481
3488
  * EXEC SQL set connection :did;
3482
3489
  */
3483
- #line 2692 "informixc.ec"
3490
+ #line 2699 "informixc.ec"
3484
3491
  {
3485
- #line 2692 "informixc.ec"
3492
+ #line 2699 "informixc.ec"
3486
3493
  sqli_connect_set(0, did, 0);
3487
- #line 2692 "informixc.ec"
3494
+ #line 2699 "informixc.ec"
3488
3495
  }
3489
3496
  if (SQLCODE < 0)
3490
3497
  raise_ifx_extended();
@@ -3496,12 +3503,12 @@ each(VALUE self, VALUE type, VALUE bang)
3496
3503
  /*
3497
3504
  * EXEC SQL fetch :cid using descriptor output;
3498
3505
  */
3499
- #line 2700 "informixc.ec"
3506
+ #line 2707 "informixc.ec"
3500
3507
  {
3501
- #line 2700 "informixc.ec"
3508
+ #line 2707 "informixc.ec"
3502
3509
  static _FetchSpec _FS0 = { 0, 1, 0 };
3503
3510
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), (ifx_sqlda_t *)0, output, (char *)0, &_FS0);
3504
- #line 2700 "informixc.ec"
3511
+ #line 2707 "informixc.ec"
3505
3512
  }
3506
3513
  if (SQLCODE < 0)
3507
3514
  raise_ifx_extended();
@@ -3563,13 +3570,13 @@ rb_inscur_put(int argc, VALUE *argv, VALUE self)
3563
3570
  /*
3564
3571
  * EXEC SQL begin declare section;
3565
3572
  */
3566
- #line 2758 "informixc.ec"
3567
- #line 2759 "informixc.ec"
3573
+ #line 2765 "informixc.ec"
3574
+ #line 2766 "informixc.ec"
3568
3575
  char *cid, *did;
3569
3576
  /*
3570
3577
  * EXEC SQL end declare section;
3571
3578
  */
3572
- #line 2760 "informixc.ec"
3579
+ #line 2767 "informixc.ec"
3573
3580
 
3574
3581
 
3575
3582
  Data_Get_Struct(self, cursor_t, c);
@@ -3580,11 +3587,11 @@ rb_inscur_put(int argc, VALUE *argv, VALUE self)
3580
3587
  /*
3581
3588
  * EXEC SQL set connection :did;
3582
3589
  */
3583
- #line 2767 "informixc.ec"
3590
+ #line 2774 "informixc.ec"
3584
3591
  {
3585
- #line 2767 "informixc.ec"
3592
+ #line 2774 "informixc.ec"
3586
3593
  sqli_connect_set(0, did, 0);
3587
- #line 2767 "informixc.ec"
3594
+ #line 2774 "informixc.ec"
3588
3595
  }
3589
3596
  if (SQLCODE < 0)
3590
3597
  raise_ifx_extended();
@@ -3600,11 +3607,11 @@ rb_inscur_put(int argc, VALUE *argv, VALUE self)
3600
3607
  /*
3601
3608
  * EXEC SQL put :cid using descriptor input;
3602
3609
  */
3603
- #line 2779 "informixc.ec"
3610
+ #line 2786 "informixc.ec"
3604
3611
  {
3605
- #line 2779 "informixc.ec"
3612
+ #line 2786 "informixc.ec"
3606
3613
  sqli_curs_put(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), input, (char *)0);
3607
- #line 2779 "informixc.ec"
3614
+ #line 2786 "informixc.ec"
3608
3615
  }
3609
3616
  clean_input_slots(c);
3610
3617
  if (SQLCODE < 0)
@@ -3629,13 +3636,13 @@ rb_inscur_flush(VALUE self)
3629
3636
  /*
3630
3637
  * EXEC SQL begin declare section;
3631
3638
  */
3632
- #line 2800 "informixc.ec"
3633
- #line 2801 "informixc.ec"
3639
+ #line 2807 "informixc.ec"
3640
+ #line 2808 "informixc.ec"
3634
3641
  char *cid, *did;
3635
3642
  /*
3636
3643
  * EXEC SQL end declare section;
3637
3644
  */
3638
- #line 2802 "informixc.ec"
3645
+ #line 2809 "informixc.ec"
3639
3646
 
3640
3647
 
3641
3648
  Data_Get_Struct(self, cursor_t, c);
@@ -3646,11 +3653,11 @@ rb_inscur_flush(VALUE self)
3646
3653
  /*
3647
3654
  * EXEC SQL set connection :did;
3648
3655
  */
3649
- #line 2809 "informixc.ec"
3656
+ #line 2816 "informixc.ec"
3650
3657
  {
3651
- #line 2809 "informixc.ec"
3658
+ #line 2816 "informixc.ec"
3652
3659
  sqli_connect_set(0, did, 0);
3653
- #line 2809 "informixc.ec"
3660
+ #line 2816 "informixc.ec"
3654
3661
  }
3655
3662
  if (SQLCODE < 0)
3656
3663
  raise_ifx_extended();
@@ -3659,11 +3666,11 @@ rb_inscur_flush(VALUE self)
3659
3666
  /*
3660
3667
  * EXEC SQL flush :cid;
3661
3668
  */
3662
- #line 2814 "informixc.ec"
3669
+ #line 2821 "informixc.ec"
3663
3670
  {
3664
- #line 2814 "informixc.ec"
3671
+ #line 2821 "informixc.ec"
3665
3672
  sqli_curs_flush(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256));
3666
- #line 2814 "informixc.ec"
3673
+ #line 2821 "informixc.ec"
3667
3674
  }
3668
3675
  return self;
3669
3676
  }
@@ -3684,14 +3691,14 @@ rb_scrollcur_entry(VALUE self, VALUE index, VALUE type, VALUE bang)
3684
3691
  /*
3685
3692
  * EXEC SQL begin declare section;
3686
3693
  */
3687
- #line 2831 "informixc.ec"
3688
- #line 2832 "informixc.ec"
3694
+ #line 2838 "informixc.ec"
3695
+ #line 2839 "informixc.ec"
3689
3696
  char *cid, *did;
3690
3697
  long pos;
3691
3698
  /*
3692
3699
  * EXEC SQL end declare section;
3693
3700
  */
3694
- #line 2834 "informixc.ec"
3701
+ #line 2841 "informixc.ec"
3695
3702
 
3696
3703
 
3697
3704
  Data_Get_Struct(self, cursor_t, c);
@@ -3702,11 +3709,11 @@ long pos;
3702
3709
  /*
3703
3710
  * EXEC SQL set connection :did;
3704
3711
  */
3705
- #line 2841 "informixc.ec"
3712
+ #line 2848 "informixc.ec"
3706
3713
  {
3707
- #line 2841 "informixc.ec"
3714
+ #line 2848 "informixc.ec"
3708
3715
  sqli_connect_set(0, did, 0);
3709
- #line 2841 "informixc.ec"
3716
+ #line 2848 "informixc.ec"
3710
3717
  }
3711
3718
  if (SQLCODE < 0)
3712
3719
  return Qnil;
@@ -3718,60 +3725,60 @@ long pos;
3718
3725
  /*
3719
3726
  * EXEC SQL fetch current :cid using descriptor output;
3720
3727
  */
3721
- #line 2849 "informixc.ec"
3728
+ #line 2856 "informixc.ec"
3722
3729
  {
3723
- #line 2849 "informixc.ec"
3730
+ #line 2856 "informixc.ec"
3724
3731
  static _FetchSpec _FS0 = { 0, 5, 0 };
3725
3732
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), (ifx_sqlda_t *)0, output, (char *)0, &_FS0);
3726
- #line 2849 "informixc.ec"
3733
+ #line 2856 "informixc.ec"
3727
3734
  }
3728
3735
  else if ((pos = NUM2LONG(index) + 1) > 0)
3729
3736
  /*
3730
3737
  * EXEC SQL fetch absolute :pos :cid using descriptor output;
3731
3738
  */
3732
- #line 2851 "informixc.ec"
3739
+ #line 2858 "informixc.ec"
3733
3740
  {
3734
- #line 2851 "informixc.ec"
3741
+ #line 2858 "informixc.ec"
3735
3742
  static ifx_sqlvar_t _sqibind[] =
3736
3743
  {
3737
3744
  { 103, sizeof(pos), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
3738
- #line 2851 "informixc.ec"
3745
+ #line 2858 "informixc.ec"
3739
3746
  };
3740
3747
  static ifx_sqlda_t _SD0 = { 1, _sqibind, {0}, 1, 0 };
3741
3748
  static _FetchSpec _FS1 = { 0, 6, 0 };
3742
- #line 2851 "informixc.ec"
3749
+ #line 2858 "informixc.ec"
3743
3750
  _sqibind[0].sqldata = (char *) &pos;
3744
3751
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), &_SD0, output, (char *)0, &_FS1);
3745
- #line 2851 "informixc.ec"
3752
+ #line 2858 "informixc.ec"
3746
3753
  }
3747
3754
  else {
3748
3755
  /*
3749
3756
  * EXEC SQL fetch last :cid;
3750
3757
  */
3751
- #line 2853 "informixc.ec"
3758
+ #line 2860 "informixc.ec"
3752
3759
  {
3753
- #line 2853 "informixc.ec"
3760
+ #line 2860 "informixc.ec"
3754
3761
  static _FetchSpec _FS0 = { 0, 4, 0 };
3755
3762
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), (ifx_sqlda_t *)0, (ifx_sqlda_t *)0, (char *)0, &_FS0);
3756
- #line 2853 "informixc.ec"
3763
+ #line 2860 "informixc.ec"
3757
3764
  }
3758
3765
  /*
3759
3766
  * EXEC SQL fetch relative :pos :cid using descriptor output;
3760
3767
  */
3761
- #line 2854 "informixc.ec"
3768
+ #line 2861 "informixc.ec"
3762
3769
  {
3763
- #line 2854 "informixc.ec"
3770
+ #line 2861 "informixc.ec"
3764
3771
  static ifx_sqlvar_t _sqibind[] =
3765
3772
  {
3766
3773
  { 103, sizeof(pos), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
3767
- #line 2854 "informixc.ec"
3774
+ #line 2861 "informixc.ec"
3768
3775
  };
3769
3776
  static ifx_sqlda_t _SD0 = { 1, _sqibind, {0}, 1, 0 };
3770
3777
  static _FetchSpec _FS1 = { 0, 7, 0 };
3771
- #line 2854 "informixc.ec"
3778
+ #line 2861 "informixc.ec"
3772
3779
  _sqibind[0].sqldata = (char *) &pos;
3773
3780
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), &_SD0, output, (char *)0, &_FS1);
3774
- #line 2854 "informixc.ec"
3781
+ #line 2861 "informixc.ec"
3775
3782
  }
3776
3783
  }
3777
3784
 
@@ -3799,14 +3806,14 @@ rb_scrollcur_rel(VALUE self, VALUE offset, VALUE type, VALUE bang)
3799
3806
  /*
3800
3807
  * EXEC SQL begin declare section;
3801
3808
  */
3802
- #line 2878 "informixc.ec"
3803
- #line 2879 "informixc.ec"
3809
+ #line 2885 "informixc.ec"
3810
+ #line 2886 "informixc.ec"
3804
3811
  char *cid, *did;
3805
3812
  long pos;
3806
3813
  /*
3807
3814
  * EXEC SQL end declare section;
3808
3815
  */
3809
- #line 2881 "informixc.ec"
3816
+ #line 2888 "informixc.ec"
3810
3817
 
3811
3818
 
3812
3819
  Data_Get_Struct(self, cursor_t, c);
@@ -3817,11 +3824,11 @@ long pos;
3817
3824
  /*
3818
3825
  * EXEC SQL set connection :did;
3819
3826
  */
3820
- #line 2888 "informixc.ec"
3827
+ #line 2895 "informixc.ec"
3821
3828
  {
3822
- #line 2888 "informixc.ec"
3829
+ #line 2895 "informixc.ec"
3823
3830
  sqli_connect_set(0, did, 0);
3824
- #line 2888 "informixc.ec"
3831
+ #line 2895 "informixc.ec"
3825
3832
  }
3826
3833
  if (SQLCODE < 0)
3827
3834
  return Qnil;
@@ -3833,20 +3840,20 @@ long pos;
3833
3840
  /*
3834
3841
  * EXEC SQL fetch relative :pos :cid using descriptor output;
3835
3842
  */
3836
- #line 2896 "informixc.ec"
3843
+ #line 2903 "informixc.ec"
3837
3844
  {
3838
- #line 2896 "informixc.ec"
3845
+ #line 2903 "informixc.ec"
3839
3846
  static ifx_sqlvar_t _sqibind[] =
3840
3847
  {
3841
3848
  { 103, sizeof(pos), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
3842
- #line 2896 "informixc.ec"
3849
+ #line 2903 "informixc.ec"
3843
3850
  };
3844
3851
  static ifx_sqlda_t _SD0 = { 1, _sqibind, {0}, 1, 0 };
3845
3852
  static _FetchSpec _FS1 = { 0, 7, 0 };
3846
- #line 2896 "informixc.ec"
3853
+ #line 2903 "informixc.ec"
3847
3854
  _sqibind[0].sqldata = (char *) &pos;
3848
3855
  sqli_curs_fetch(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), &_SD0, output, (char *)0, &_FS1);
3849
- #line 2896 "informixc.ec"
3856
+ #line 2903 "informixc.ec"
3850
3857
  }
3851
3858
 
3852
3859
  if (SQLCODE == SQLNOTFOUND)
@@ -3868,13 +3875,13 @@ cursorbase_close_or_free(cursor_t *c, short op)
3868
3875
  /*
3869
3876
  * EXEC SQL begin declare section;
3870
3877
  */
3871
- #line 2914 "informixc.ec"
3872
- #line 2915 "informixc.ec"
3878
+ #line 2921 "informixc.ec"
3879
+ #line 2922 "informixc.ec"
3873
3880
  char *cid, *did;
3874
3881
  /*
3875
3882
  * EXEC SQL end declare section;
3876
3883
  */
3877
- #line 2916 "informixc.ec"
3884
+ #line 2923 "informixc.ec"
3878
3885
 
3879
3886
 
3880
3887
  if (op == 1 && !c->is_open)
@@ -3890,11 +3897,11 @@ cursorbase_close_or_free(cursor_t *c, short op)
3890
3897
  /*
3891
3898
  * EXEC SQL set connection :did;
3892
3899
  */
3893
- #line 2928 "informixc.ec"
3900
+ #line 2935 "informixc.ec"
3894
3901
  {
3895
- #line 2928 "informixc.ec"
3902
+ #line 2935 "informixc.ec"
3896
3903
  sqli_connect_set(0, did, 0);
3897
- #line 2928 "informixc.ec"
3904
+ #line 2935 "informixc.ec"
3898
3905
  }
3899
3906
  if (SQLCODE < 0)
3900
3907
  return;
@@ -3902,22 +3909,22 @@ cursorbase_close_or_free(cursor_t *c, short op)
3902
3909
  /*
3903
3910
  * EXEC SQL close :cid;
3904
3911
  */
3905
- #line 2932 "informixc.ec"
3912
+ #line 2939 "informixc.ec"
3906
3913
  {
3907
- #line 2932 "informixc.ec"
3914
+ #line 2939 "informixc.ec"
3908
3915
  sqli_curs_close(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256));
3909
- #line 2932 "informixc.ec"
3916
+ #line 2939 "informixc.ec"
3910
3917
  }
3911
3918
  if (op == 1)
3912
3919
  break;
3913
3920
  /*
3914
3921
  * EXEC SQL free :cid;
3915
3922
  */
3916
- #line 2935 "informixc.ec"
3923
+ #line 2942 "informixc.ec"
3917
3924
  {
3918
- #line 2935 "informixc.ec"
3925
+ #line 2942 "informixc.ec"
3919
3926
  sqli_curs_free(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 258));
3920
- #line 2935 "informixc.ec"
3927
+ #line 2942 "informixc.ec"
3921
3928
  }
3922
3929
  st_free(c);
3923
3930
  break;
@@ -3985,13 +3992,13 @@ rb_cursorbase_open(int argc, VALUE *argv, VALUE self)
3985
3992
  /*
3986
3993
  * EXEC SQL begin declare section;
3987
3994
  */
3988
- #line 2999 "informixc.ec"
3989
- #line 3000 "informixc.ec"
3995
+ #line 3006 "informixc.ec"
3996
+ #line 3007 "informixc.ec"
3990
3997
  char *cid, *did;
3991
3998
  /*
3992
3999
  * EXEC SQL end declare section;
3993
4000
  */
3994
- #line 3001 "informixc.ec"
4001
+ #line 3008 "informixc.ec"
3995
4002
 
3996
4003
 
3997
4004
  Data_Get_Struct(self, cursor_t, c);
@@ -4003,11 +4010,11 @@ rb_cursorbase_open(int argc, VALUE *argv, VALUE self)
4003
4010
  /*
4004
4011
  * EXEC SQL set connection :did;
4005
4012
  */
4006
- #line 3009 "informixc.ec"
4013
+ #line 3016 "informixc.ec"
4007
4014
  {
4008
- #line 3009 "informixc.ec"
4015
+ #line 3016 "informixc.ec"
4009
4016
  sqli_connect_set(0, did, 0);
4010
- #line 3009 "informixc.ec"
4017
+ #line 3016 "informixc.ec"
4011
4018
  }
4012
4019
  if (SQLCODE < 0)
4013
4020
  raise_ifx_extended();
@@ -4026,11 +4033,11 @@ rb_cursorbase_open(int argc, VALUE *argv, VALUE self)
4026
4033
  * EXEC SQL open :cid using descriptor input
4027
4034
  * with reoptimization;
4028
4035
  */
4029
- #line 3023 "informixc.ec"
4036
+ #line 3030 "informixc.ec"
4030
4037
  {
4031
- #line 3024 "informixc.ec"
4038
+ #line 3031 "informixc.ec"
4032
4039
  sqli_curs_open(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), input, (char *)0, (struct value *)0, 1, 1);
4033
- #line 3024 "informixc.ec"
4040
+ #line 3031 "informixc.ec"
4034
4041
  }
4035
4042
  clean_input_slots(c);
4036
4043
  }
@@ -4038,22 +4045,22 @@ rb_cursorbase_open(int argc, VALUE *argv, VALUE self)
4038
4045
  /*
4039
4046
  * EXEC SQL open :cid with reoptimization;
4040
4047
  */
4041
- #line 3028 "informixc.ec"
4048
+ #line 3035 "informixc.ec"
4042
4049
  {
4043
- #line 3028 "informixc.ec"
4050
+ #line 3035 "informixc.ec"
4044
4051
  sqli_curs_open(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), (ifx_sqlda_t *)0, (char *)0, (struct value *)0, 0, 1);
4045
- #line 3028 "informixc.ec"
4052
+ #line 3035 "informixc.ec"
4046
4053
  }
4047
4054
  }
4048
4055
  else
4049
4056
  /*
4050
4057
  * EXEC SQL open :cid;
4051
4058
  */
4052
- #line 3031 "informixc.ec"
4059
+ #line 3038 "informixc.ec"
4053
4060
  {
4054
- #line 3031 "informixc.ec"
4061
+ #line 3038 "informixc.ec"
4055
4062
  sqli_curs_open(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 256), (ifx_sqlda_t *)0, (char *)0, (struct value *)0, 0, 0);
4056
- #line 3031 "informixc.ec"
4063
+ #line 3038 "informixc.ec"
4057
4064
  }
4058
4065
 
4059
4066
  if (SQLCODE < 0)
@@ -4115,14 +4122,14 @@ rb_cursor_s_new0(int argc, VALUE *argv, VALUE self)
4115
4122
  /*
4116
4123
  * EXEC SQL begin declare section;
4117
4124
  */
4118
- #line 3089 "informixc.ec"
4119
- #line 3090 "informixc.ec"
4125
+ #line 3096 "informixc.ec"
4126
+ #line 3097 "informixc.ec"
4120
4127
  char *c_query;
4121
4128
  char *cid, *sid, *did;
4122
4129
  /*
4123
4130
  * EXEC SQL end declare section;
4124
4131
  */
4125
- #line 3092 "informixc.ec"
4132
+ #line 3099 "informixc.ec"
4126
4133
 
4127
4134
 
4128
4135
  memset(&c, 0, sizeof(c));
@@ -4132,11 +4139,11 @@ rb_cursor_s_new0(int argc, VALUE *argv, VALUE self)
4132
4139
  /*
4133
4140
  * EXEC SQL set connection :did;
4134
4141
  */
4135
- #line 3098 "informixc.ec"
4142
+ #line 3105 "informixc.ec"
4136
4143
  {
4137
- #line 3098 "informixc.ec"
4144
+ #line 3105 "informixc.ec"
4138
4145
  sqli_connect_set(0, did, 0);
4139
- #line 3098 "informixc.ec"
4146
+ #line 3105 "informixc.ec"
4140
4147
  }
4141
4148
 
4142
4149
  if (SQLCODE < 0)
@@ -4160,11 +4167,11 @@ rb_cursor_s_new0(int argc, VALUE *argv, VALUE self)
4160
4167
  /*
4161
4168
  * EXEC SQL prepare :sid from :c_query;
4162
4169
  */
4163
- #line 3118 "informixc.ec"
4170
+ #line 3125 "informixc.ec"
4164
4171
  {
4165
- #line 3118 "informixc.ec"
4172
+ #line 3125 "informixc.ec"
4166
4173
  sqli_prep(ESQLINTVERSION, sid, c_query,(ifx_literal_t *)0, (ifx_namelist_t *)0, -1, 0, 0 );
4167
- #line 3118 "informixc.ec"
4174
+ #line 3125 "informixc.ec"
4168
4175
  }
4169
4176
  if (SQLCODE < 0)
4170
4177
  raise_ifx_extended();
@@ -4173,41 +4180,41 @@ rb_cursor_s_new0(int argc, VALUE *argv, VALUE self)
4173
4180
  /*
4174
4181
  * EXEC SQL declare :cid scroll cursor with hold for :sid;
4175
4182
  */
4176
- #line 3123 "informixc.ec"
4183
+ #line 3130 "informixc.ec"
4177
4184
  {
4178
- #line 3123 "informixc.ec"
4185
+ #line 3130 "informixc.ec"
4179
4186
  sqli_curs_decl_dynm(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 0), cid, sqli_curs_locate(ESQLINTVERSION, sid, 1), 4128, 0);
4180
- #line 3123 "informixc.ec"
4187
+ #line 3130 "informixc.ec"
4181
4188
  }
4182
4189
  else if (RTEST(hold))
4183
4190
  /*
4184
4191
  * EXEC SQL declare :cid cursor with hold for :sid;
4185
4192
  */
4186
- #line 3125 "informixc.ec"
4193
+ #line 3132 "informixc.ec"
4187
4194
  {
4188
- #line 3125 "informixc.ec"
4195
+ #line 3132 "informixc.ec"
4189
4196
  sqli_curs_decl_dynm(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 0), cid, sqli_curs_locate(ESQLINTVERSION, sid, 1), 4096, 0);
4190
- #line 3125 "informixc.ec"
4197
+ #line 3132 "informixc.ec"
4191
4198
  }
4192
4199
  else if (RTEST(scroll))
4193
4200
  /*
4194
4201
  * EXEC SQL declare :cid scroll cursor for :sid;
4195
4202
  */
4196
- #line 3127 "informixc.ec"
4203
+ #line 3134 "informixc.ec"
4197
4204
  {
4198
- #line 3127 "informixc.ec"
4205
+ #line 3134 "informixc.ec"
4199
4206
  sqli_curs_decl_dynm(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 0), cid, sqli_curs_locate(ESQLINTVERSION, sid, 1), 32, 0);
4200
- #line 3127 "informixc.ec"
4207
+ #line 3134 "informixc.ec"
4201
4208
  }
4202
4209
  else
4203
4210
  /*
4204
4211
  * EXEC SQL declare :cid cursor for :sid;
4205
4212
  */
4206
- #line 3129 "informixc.ec"
4213
+ #line 3136 "informixc.ec"
4207
4214
  {
4208
- #line 3129 "informixc.ec"
4215
+ #line 3136 "informixc.ec"
4209
4216
  sqli_curs_decl_dynm(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, cid, 0), cid, sqli_curs_locate(ESQLINTVERSION, sid, 1), 0, 0);
4210
- #line 3129 "informixc.ec"
4217
+ #line 3136 "informixc.ec"
4211
4218
  }
4212
4219
 
4213
4220
  if (SQLCODE < 0)
@@ -4217,11 +4224,11 @@ rb_cursor_s_new0(int argc, VALUE *argv, VALUE self)
4217
4224
  /*
4218
4225
  * EXEC SQL describe :sid into output;
4219
4226
  */
4220
- #line 3135 "informixc.ec"
4227
+ #line 3142 "informixc.ec"
4221
4228
  {
4222
- #line 3135 "informixc.ec"
4229
+ #line 3142 "informixc.ec"
4223
4230
  sqli_describe_stmt(ESQLINTVERSION, sqli_curs_locate(ESQLINTVERSION, sid, 257), &output, 0);
4224
- #line 3135 "informixc.ec"
4231
+ #line 3142 "informixc.ec"
4225
4232
  }
4226
4233
  c.daOutput = output;
4227
4234
 
@@ -4510,4 +4517,4 @@ void Init_informixc(void)
4510
4517
  sym_params = ID2SYM(rb_intern("params"));
4511
4518
  }
4512
4519
 
4513
- #line 3421 "informixc.ec"
4520
+ #line 3428 "informixc.ec"