~drizzle-trunk/drizzle/development

1712.1.1 by Monty Taylor
Merged libdrizzle directly into tree.
1
/*
2
 * Drizzle Client & Protocol Library
3
 *
4
 * Copyright (C) 2008 Eric Day (eday@oddments.org)
5
 * All rights reserved.
6
 *
7
 * Use and distribution licensed under the BSD license.  See
1799.2.3 by Monty Taylor
Reference root BSD copying file.
8
 * the COPYING.BSD file in the root source directory for full text.
1712.1.1 by Monty Taylor
Merged libdrizzle directly into tree.
9
 */
10
11
/**
12
 * @file
13
 * @brief Column Declarations for Servers
14
 */
15
16
#ifndef __DRIZZLE_COLUMN_SERVER_H
17
#define __DRIZZLE_COLUMN_SERVER_H
18
19
#ifdef __cplusplus
20
extern "C" {
21
#endif
22
23
/**
24
 * @addtogroup drizzle_column_server Column Declarations for Servers
25
 * @ingroup drizzle_server_interface
26
 *
27
 * These functions allow you to send column information over a connection.
28
 * @{
29
 */
30
31
/**
32
 * Write column information.
33
 */
34
DRIZZLE_API
35
drizzle_return_t drizzle_column_write(drizzle_result_st *result,
36
                                      drizzle_column_st *column);
37
38
/**
39
 * Set catalog name for a column.
40
 */
41
DRIZZLE_API
42
void drizzle_column_set_catalog(drizzle_column_st *column, const char *catalog);
43
 
44
/**
45
 * Set database name for a column.
46
 */
47
DRIZZLE_API
48
void drizzle_column_set_db(drizzle_column_st *column, const char *db);
49
 
50
/**
51
 * Set table name for a column.
52
 */
53
DRIZZLE_API
54
void drizzle_column_set_table(drizzle_column_st *column, const char *table);
55
56
/**
57
 * Set original table name for a column.
58
 */
59
DRIZZLE_API
60
void drizzle_column_set_orig_table(drizzle_column_st *column,
61
                                   const char *orig_table);
62
63
/**
64
 * Set column name for a column.
65
 */
66
DRIZZLE_API
67
void drizzle_column_set_name(drizzle_column_st *column, const char *name);
68
69
/**
70
 * Set original column name for a column.
71
 */
72
DRIZZLE_API
73
void drizzle_column_set_orig_name(drizzle_column_st *column,
74
                                  const char *orig_name);
75
76
/**
77
 * Set charset for a column.
78
 */
79
DRIZZLE_API
80
void drizzle_column_set_charset(drizzle_column_st *column,
81
                                drizzle_charset_t charset);
82
83
/**
84
 * Set size of a column.
85
 */
86
DRIZZLE_API
87
void drizzle_column_set_size(drizzle_column_st *column, uint32_t size);
88
89
/**
90
 * Set the type of a column.
91
 */
92
DRIZZLE_API
93
void drizzle_column_set_type(drizzle_column_st *column,
94
                             drizzle_column_type_t type);
95
96
/**
97
 * Set flags for a column.
98
 */
99
DRIZZLE_API
100
void drizzle_column_set_flags(drizzle_column_st *column,
101
                              drizzle_column_flags_t flags);
102
103
/**
104
 * Set the number of decimals for numeric columns.
105
 */
106
DRIZZLE_API
107
void drizzle_column_set_decimals(drizzle_column_st *column, uint8_t decimals);
108
109
/**
110
 * Set default value for a column.
111
 */
112
DRIZZLE_API
113
void drizzle_column_set_default_value(drizzle_column_st *column,
114
                                      const uint8_t *default_value,
115
                                      size_t size);
116
117
/** @} */
118
119
#ifdef __cplusplus
120
}
121
#endif
122
123
#endif /* __DRIZZLE_COLUMN_SERVER_H */