do_mysql 0.2.4 → 0.9.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,67 +0,0 @@
1
- %module mysql_c
2
- %{
3
- #include <mysql.h>
4
- #include <errmsg.h>
5
- #include <mysqld_error.h>
6
-
7
- VALUE mysql_c_fetch_field_names(MYSQL_RES *reader, int count) {
8
- VALUE arr = rb_ary_new();
9
- int i;
10
- for(i = 0; i < count; i++) {
11
- rb_ary_push(arr, rb_str_new2(mysql_fetch_field_direct(reader, i)->name));
12
- }
13
- return arr;
14
- }
15
-
16
- VALUE mysql_c_fetch_field_types(MYSQL_RES *reader, int count) {
17
- VALUE arr = rb_ary_new();
18
- int i;
19
- for(i = 0; i < count; i++) {
20
- rb_ary_push(arr, INT2NUM(mysql_fetch_field_direct(reader, i)->type));
21
- }
22
- return arr;
23
- }
24
-
25
- VALUE mysql_c_fetch_row(MYSQL_RES *reader) {
26
- VALUE arr = rb_ary_new();
27
- MYSQL_ROW result = (MYSQL_ROW)mysql_fetch_row(reader);
28
- if(!result) return Qnil;
29
- int i;
30
-
31
- for(i = 0; i < reader->field_count; i++) {
32
- if(result[i] == NULL) rb_ary_push(arr, Qnil);
33
- else rb_ary_push(arr, rb_str_new2(result[i]));
34
- }
35
- return arr;
36
- }
37
-
38
- %}
39
-
40
- %ignore st_mysql_options;
41
- %include "/usr/local/mysql/include/mysql.h"
42
-
43
- VALUE mysql_c_fetch_field_names(MYSQL_RES *reader, int count);
44
- VALUE mysql_c_fetch_field_types(MYSQL_RES *reader, int count);
45
- VALUE mysql_c_fetch_row(MYSQL_RES *reader);
46
-
47
- enum enum_field_types { MYSQL_TYPE_DECIMAL, MYSQL_TYPE_TINY,
48
- MYSQL_TYPE_SHORT, MYSQL_TYPE_LONG,
49
- MYSQL_TYPE_FLOAT, MYSQL_TYPE_DOUBLE,
50
- MYSQL_TYPE_NULL, MYSQL_TYPE_TIMESTAMP,
51
- MYSQL_TYPE_LONGLONG,MYSQL_TYPE_INT24,
52
- MYSQL_TYPE_DATE, MYSQL_TYPE_TIME,
53
- MYSQL_TYPE_DATETIME, MYSQL_TYPE_YEAR,
54
- MYSQL_TYPE_NEWDATE, MYSQL_TYPE_VARCHAR,
55
- MYSQL_TYPE_BIT,
56
- MYSQL_TYPE_NEWDECIMAL=246,
57
- MYSQL_TYPE_ENUM=247,
58
- MYSQL_TYPE_SET=248,
59
- MYSQL_TYPE_TINY_BLOB=249,
60
- MYSQL_TYPE_MEDIUM_BLOB=250,
61
- MYSQL_TYPE_LONG_BLOB=251,
62
- MYSQL_TYPE_BLOB=252,
63
- MYSQL_TYPE_VAR_STRING=253,
64
- MYSQL_TYPE_STRING=254,
65
- MYSQL_TYPE_GEOMETRY=255
66
-
67
- };